Course notes and problem solutions for Udacity's Technical Interview Course.
The course is divided into several modules. Each module covers one common topic in technical interviews. The layouts are as follows:
- Introduction and Efficiency: Provided a course overview, introduced the concept of algorithms and discussed about their efficiency.
- List-based Collections: Discussed the various list-based data structures used in algorithms along with their use cases and implementation details.
- Searching and Sorting: Discussed binary search, recursion and various sorting algorithms with their relative merits and demerits.
- Maps and Hashing: Discused the concept of maps and hashing. Concluded the module with an implementation of hash maps.
- Trees: Discussed terminology, traversal and different types of tree like data structures.
- Graphs: Discussed terminology and different types of graph data structures.
- Case Studies in Algorithms: Discussed few common algorithms asked about in interviews along with solutions.
- Technical Interview: Discussed various steps for approaching a problem during a technical interview.