Top algorithms ?

Insertion sort, Selection sort,

Merge Sort, Quicksort

Binary Search

Breadth First Search (BFS)

Depth First Search (DFS)

Lee algorithm | Shortest path in a Maze

Flood fill Algorithm

Floyd?s Cycle Detection Algorithm

Kadane?s algorithm

Longest Increasing Subsequence

Inorder, Preorder, Postorder Tree Traversals

Heap Sort

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

Stack, Queue

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.