Algorithms
Step-by-step problem-solving techniques asked in every coding interview.
0 of 26 lessons published
Syllabus
01 SearchingFinding things fast. 2 lessons
- 1.1Linear searchComing soon
- 1.2Binary search and its variationsComing soon
02 SortingPutting things in order. 5 lessons
- 2.1Bubble, selection and insertion sortComing soon
- 2.2Merge sortComing soon
- 2.3Quick sortComing soon
- 2.4Heap sortComing soon
- 2.5Counting and radix sortComing soon
03 Recursion and BacktrackingTrying every possibility smartly. 3 lessons
- 3.1Recursion patternsComing soon
- 3.2Backtracking: N-Queens and SudokuComing soon
- 3.3Permutations and subsetsComing soon
04 Greedy AlgorithmsChoosing the best option at each step. 3 lessons
- 4.1Greedy approachComing soon
- 4.2Activity selection and job schedulingComing soon
- 4.3Huffman codingComing soon
05 Divide and ConquerSplit, solve and merge. 2 lessons
- 5.1Divide and conquer techniqueComing soon
- 5.2Master theoremComing soon
06 Dynamic ProgrammingRemembering answers to avoid repeated work. 5 lessons
- 6.1What is dynamic programming?Coming soon
- 6.2Memoization vs tabulationComing soon
- 6.3Knapsack problemsComing soon
- 6.4Longest common subsequenceComing soon
- 6.5DP on gridsComing soon
07 Graph AlgorithmsPaths and networks. 4 lessons
- 7.1Dijkstra's algorithmComing soon
- 7.2Bellman-FordComing soon
- 7.3Floyd-WarshallComing soon
- 7.4Minimum spanning tree: Prim and KruskalComing soon
08 Bit Manipulation and MathsLow-level tricks. 2 lessons
- 8.1Bit manipulationComing soon
- 8.2Number theory basicsComing soon