Sorting Algorithms using Java & C: Make Your Basics Strong
Learn Analysis of Algorithm using asymptotic notations like Big Oh and others. Understand and analyse sorting algorithms
Description
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.
What You Will Learn!
- How to analyse an algorithm, understanding worst case, best case and average case complexities, Use Big O, Big Omega and Big Theta notations.
- Seven (7) important comparison based sorting algorithms, #Bubble Sort, #Selection Sort, #Insertion Sort, #Shell Sort, #Quick Sort, #Merge Sort and #Heap Sort.
- Students will get to know details of #heap data structures along with heap operations while leaning heap sort.
- They will experience and understand how to execute program on various input sizes and compare the execution time between different input sizes using graph.
Who Should Attend!
- "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.