This course will help to understand seven most important comparison based sorting algorithms along with the details of how to estimate the complexities for any algorithm. Students will clearly understand how to estimate the best case, average case and worst case complexities for any algorithm along with details analysis of each of the sorting algorithm.
The seven sorting algorithms that you will learn in this course are as follows:
- Bubble sort
- Selection Sort
- Insertion Sort
- Shell Sort
- Quick Sort
- Merge Sort
- Heap Sort
Students will learn details of heap data structures along with the heap operations like, insertion into heap, heap adjust, heap delete and heapify while learning the heap sort.
Although, sorting utilities can be found in the library of any modern day programming language, however, it is must for a programming student to understand them from scratch as this will help to form strong foundation on algorithm. Also, it is often found that, many questions are asked on sorting algorithms on Job interviews, hence, it will be really fruitful to have a strong hold on this topic.
In the course, I described the logic of each of the seven comparison based sorting algorithms using visual description that is really easy to understand, then I explained the algorithm, analysed them for their performance and finally implemented them using C and Java.
If you are interested of implementing them using in other language you can also do that following the lectures. It will be really easy to do.
- “Sorting algorithms” are gateway to the world of understanding algorithms, any programming aspirant who wants to make the fundamentals more concrete. The fact is, in Job interviews of many questions are asked from this section.