Dynamic programming is one of the algorithmic paradigm that solves many problems that are failed under other paradigms such as Divide and Conquer, Greedy approach etc. The idea
Algorithmic thinking is a process of reaching a solution with a fixed set of steps. Sometimes problems can have a particular solution and sometimes for some problems we
Hashing is an approach which provides searching operation in constant running time. There are many applications that require predominantly dictionary operations(Insert, Delete, Search). One of the approaches could
In our previous post Application of Graph – Shortest Path Problems we discussed the findings of the optimal path or the shortest path between the nodes of a graph. We talk
Radix Sort is a non-comparative sorting algorithm with asymptotic complexity O(nd). It is one of the most efficient and fastest linear sorting algorithms. Radix sort was developed to
Counting Sort is a linear sorting algorithm with asymptotic complexity O(n+k), which was found by Harold Seward in 1954. Counting Sort is very time efficient and stable algorithm
Recently in an online test I faced this question i.e. on how to minimize the number of candies/toffee to be distributed by a teacher and found that a lot
Shell Sort is a generalized version of insertion sort. It is an in-place comparison sort. Shell Sort is also known as diminishing increment sort, it is one of
Quick Sort also uses divide and conquer technique like merge sort, but does not require additional storage space. It is one of the most famous comparison based sorting