OK! This will be at Second positon, this one on fourth, this one on first, Ughhh!! It is so hard to Sort How those Algorithms do this so Easily?!

Sorting is a fundamental computer science concept that every programmer needs to understand. But what is it, exactly? Why is it so important? And why is it used by so many of the most popular tech companies in the world? Let’s explore the world of sorting and see what it can do for you.
When you think of data, you probably think of numbers and statistics. However, data has many different forms. In this article, we will focus on a specific type of data called ‘sorting.’ Sorting is an important data structure that can be used to manipulate data. It is also fundamental to computer science and programming.

Let us see What Sorting Means?

The Defining of the Word is Hidden in itself as we all know sorting means arranging the meaning is still the same in computer language but just defines in depth.
You can Define Sorting as a process of arranging data in a particular order or format Sorting algorithm specifies the way to arrange data in a particular order. Most common orders are in numerical or lexicographical order.

What are various Types of Sorting?

There are many kinds of sorting algorithms in Data Structure but I have Categorized them and chosen the 15 best of them.

1. Selection Sort 2. Insertion Sort 3. Quick Sort 4. Merge Sort 5. Heap Sort 6. Radix Sort 7. Radix Sort 8. std :: Sort 9. std :: stable_Sort 10. Cocktail Shaker Sort 11. Gnome Sort 12. Bitonic Sort 13. Bogo Sort 14. Shell Sort 15. Bubble Sort

Let's See some of them and How they work:

Insertion sort

Insertion sort is a simple sorting algorithm that works similar to the way you sort playing cards in your hands. The array is virtually split into a sorted and an unsorted part. Values from the unsorted part are picked and placed at the correct position in the sorted part.

Selection sort

The selection sort algorithm sorts an array by repeatedly finding the minimum element (considering ascending order) from the unsorted part and putting it at the beginning.

Heap sort

Heap sort is a comparison-based sorting technique based on Binary Heap data structure. It is similar to selection sort where we first find the minimum element and place the minimum element at the beginning. We repeat the same process for the remaining elements.

Merge sort

Merge Sort is a Divide and Conquer algorithm. It divides the input array into two halves, calls itself for the two halves, and then merges the two sorted halves. The merge() function is used for merging two halves. The merge(arr, l, m, r) is a key process that assumes that arr[l..m] and arr[m+1..r] are sorted and merges the two sorted sub-arrays into one.

Quick sort

Like Merge Sort, QuickSort is a Divide and Conquer algorithm. It picks an element as a pivot and partitions the given array around the picked pivot. There are many different versions of quickSort that pick pivot in different ways.

Bubble sort

Bubble Sort is the simplest sorting algorithm that works by repeatedly swapping the adjacent elements if they are in the wrong order.

These were some of the Sorting Algorithms explained using visual sorting.
Tell us according to you which one was the the Fastest and Which Sorting Algorithm you loved the most.