- 0 Followers

**Top algorithms –**

Insertion sort, Selection sort, Bubble sort

Lee algorithm | Shortest path in a Maze

Floyd’s Cycle Detection Algorithm

Longest Increasing Subsequence

Inorder, Preorder, Postorder Tree Traversals

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 1

Linked List Implementation | Part 2

Graph Implementation using STL

Graph Implementation in C++ without using STL

Trie Implementation | Insert, Search and Delete

Memory 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.