Top algorithms ?
Insertion sort, Selection sort,
Merge Sort, Quicksort
Breadth First Search (BFS)
Depth First Search (DFS)
Lee algorithm | Shortest path in a Maze
Flood fill Algorithm
Floyd?s Cycle Detection Algorithm
Longest Increasing Subsequence
Inorder, Preorder, Postorder Tree Traversals
Topological Sorting in a DAG
Disjoint-Set Data Structure (Union-Find Algorithm)
Kruskal?s Algorithm for finding Minimum Spanning Tree
Single-Source Shortest Paths ? Dijkstra?s Algorithm
All-Pairs Shortest Paths ? Floyd Warshall Algorithm
Top Data Structures ?
Along with above algorithms, every computer science student is expected to implement below data structures ?
Linked List Implementation | Part 1Linked List Implementation | Part 2
Insertion in BSTSearch given key in BSTDeletion from BST
Min Heap and Max Heap
Graph Implementation using STLGraph Implementation in C++ without using STL
Trie Implementation | Insert, Search and DeleteMemory efficient Trie Implementation using Map | Insert, Search and Delete
One is also expected to be familiar with other programming paradigms like Backtracking, Dynamic Programming, Divide & Conquer, Greedy Algorithms and concepts like Hashing and Recursion.