Sort the following list of quick sort. 44, 11, 33, 77, 90, 42, 69, 88, 22, 6
Q.) Sort the following list of quick sort. 44, 11, 33, 77, 90, 42, 69, 88, 22, 6
Subject: Data StructuresQuick sort is a highly efficient sorting algorithm and is based on the partitioning of an array of data into smaller arrays. A large array is partitioned into two arrays, one of which holds values smaller than the specified value, say pivot, based on which the partition is made and another array holds values greater than the pivot value.
Quick sort partitions an array and then calls itself recursively twice to sort the two resulting subarrays. This algorithm is quite efficient for large-sized data sets as its average and worst-case time complexity are O(nLogn) and image.pngO(n^2), respectively.
Let's sort the given list using Quick Sort:
44, 11, 33, 77, 90, 42, 69, 88, 22, 6
Step 1: Choose a pivot. The key process in quickSort is partition(). The target of partitions is, given an array and an element x of the array as a pivot, put x at its correct position in the sorted array and put all smaller elements (smaller than x) before x, and put all greater elements (greater than x) after x. We can choose any element from the array as the pivot. We take the last element as pivot which is 6.
Step 2: Partitioning. We start from the first element and partition the array using the pivot. The smaller elements than the pivot we put on the left and the greater elements on the right. We also keep track of the position of the pivot element.
After partitioning, the list looks like this:
6, 11, 33, 44, 42, 22, 69, 88, 77, 90
Step 3: Now we apply the same steps to the left and right of the pivot (recursively).
On the left side of the pivot, we have: 6, 11, 33, 44, 42, 22
We choose 22 as the pivot and after partitioning, we get:
6, 11, 22, 44, 42, 33
We again apply quick sort on the left and right of the pivot.
On the right side of the pivot, we have: 69, 88, 77, 90
We choose 90 as the pivot and after partitioning, we get:
69, 88, 77, 90
We again apply quick sort on the left and right of the pivot.
We keep doing this until the entire list is sorted.
The final sorted list is:
6, 11, 22, 33, 42, 44, 69, 77, 88, 90
This is how Quick Sort works. It's a divide and conquer algorithm. It works by selecting a 'pivot' element from the array and partitioning the other elements into two sub-arrays, according to whether they are less than or greater than the pivot. The sub-arrays are then recursively sorted.