25 Algorithms That Every Programmer Should Know

algorithms-that-every-programmer-should-know

There is much confusion in data structures and algorithms topics like what I have to learn, which topics are important, and what should be the flow to learn all those topics.

In this article, we are going to cover very important algorithms that are very useful and important for competitive programming as well as for interview purposes. This is just a flow chart of Algorithms learned. We are not going to study anything in detail so let’s begin.


Basics:

  • Huffman Coding Compression Algorithm
  • Euclid’s Algorithm
  • Union Find Algorithm

 

Arrays:

  • Kadane’s Algorithm
  • Floyd’s Cycle Detection Algorithm
  • KMP Algorithm
  • Quick Select Algorithm
  • Boyer- More Majority Vote Algorithm

 

Sorting:

  • Insertion Sorting
  • Heap Sorting
  • Selection Sorting
  • Merge Sorting
  • Quick Sorting
  • Counting Sorting
  • Shell Sorting
  • Bubble Sorting
  • Radix Sorting
  • Bucket Sorting

 

Searching:

  • Linea Search
  • Binary Search
  • Depth First Search
  • Breadth First Search

 

Graphs:

  • Kruskal’s Algorithm
  • Dijkstra’s  Algorithm
  • Bellman Algorithm
  • Flyod Warshall Algorithm
  • Topological Sort Algorithm
  • Flood Fill Algorithm
  • Lee Algorithm

 

Leave a comment