Practice tests with realistic uses cases to help you bake the C++ algorithms in your muscle memory.
Mapping real life usecases to builtin C++ algorithms
Advantage of using algorithms to improve code readability and predictable behavior
C++ algorithms library exposure from a practical perspective with relatable examples
A method to translate problems into algorithms and use the C++ language fully before reinventing an existing language feature due to lack of awareness.
The emphasis on learning C++ from an interview perspective leads to a reinventing wheel syndrome amongst developers. The container library usage has become a norm thanks to C++11. But using the algorithms library remains a challenge.
Purpose
- Assist you in becoming self sufficient as a C++ programmer.
- Convince you about thinking algorithms first.
- Present enough realistic examples for you to get the prototyping habit in muscle memory.
- No take up months of your time to explain something you can learn and use in matter of hours!
Concerns
- Since interviews ask for search and sort algorithms, most developers believe they always have to implement them from scratch, even in production!
- The reinvention may leads to bugs.
- Every time a new developer has to read the code, they need to reinterpret the algorithm from scratch.
- Without up to date comments and documentation the code can easily be misinterpreted
- A reinvented algorithm cannot benefit from the upgrades to the language. The ranges library is availble but homegrown implementations cannot benefit from it without significant engineering efforts.
- Testing overage with corner cases of homegrown reimplementations is hard to maintain.
How to use the course?
- Every question presents a use case.
- Read the options and try to create minimal dummy data to test with.
- Plugin all options and verify if your selected option works.
- Choose the answer.
- Read the “Review Questions” section at the end of each practice test to get more information and references.