Categories
Searching
Searching an element from a set of elements
Sorting
Sorting a set of elements in a particular order
Stack and Queue
Algorithms that require FIFO or LIFO processing
Trees
Segment trees, BITs and other algorithms for interval processing and searching
Graphs
Modelling real life problems as a set of vertices and links between them
Greedy and Dynamic Programming
Solving a bigger problem through solution of subproblems
Others
Any algorithm that doesn't come under the above categories