Professional Documents
Culture Documents
Sorts
Sorts
A P P L I C AT I O N S O F A R R AY S
S O RT I N G
Iteration 1: N=M
23 3 12 19 7 75 46 95 37 86 5 16 32
A[0] A[1] A{2] A[3] A[4] A[5} A[6] A[7] A[8] A[9] A[10] A[11] A[12]
Iteration 2: N=M-1
3 23 12 19 7 75 46 95 37 86 5 16 32
A[0] A[1] A{2] A[3] A[4] A[5} A[6] A[7] A[8] A[9] A[10] A[11] A[12]
Iteration 3: N=M-2
3 5 12 19 7 75 46 95 37 86 23 16 32
A[0] A[1] A{2] A[3] A[4] A[5} A[6] A[7] A[8] A[9] A[10] A[11] A[12]
Iteration 4: N=M-3
3 5 7 19 12 75 46 95 37 86 23 16 32
A[0] A[1] A{2] A[3] A[4] A[5} A[6] A[7] A[8] A[9] A[10] A[11] A[12]
A[0] A[1] A{2] A[3] A[4] A[5} A[6] A[7] A[8] A[9] A[10] A[11] A[12]
Iteration 5: N=M-4
3 5 7 12 19 75 46 95 37 86 23 16 32
A[0] A[1] A{2] A[3] A[4] A[5} A[6] A[7] A[8] A[9] A[10] A[11] A[12]
Iteration 6: N=M-5
3 5 7 12 16 75 46 95 37 86 23 19 32
A[0] A[1] A{2] A[3] A[4] A[5} A[6] A[7] A[8] A[9] A[10] A[11] A[12]
Iteration 7: N=M-6
3 5 7 12 16 19 46 95 37 86 23 75 32
A[0] A[1] A{2] A[3] A[4] A[5} A[6] A[7] A[8] A[9] A[10] A[11] A[12]
Iteration 8: N=M-7
3 5 7 12 16 19 23 95 37 86 46 75 32
A[0] A[1] A{2] A[3] A[4] A[5} A[6] A[7] A[8] A[9] A[10] A[11] A[12]
Iteration 9: N=M-8
3 5 7 12 16 19 23 32 37 86 46 75 95
A[0] A[1] A{2] A[3] A[4] A[5} A[6] A[7] A[8] A[9] A[10] A[11] A[12]
48 3 12 19 7 23 75 95 37 86 5 16 32
More than pivot, no action, move to next element, index of next element is 8, pivotIndex still 6
48 3 12 19 7 23 75 95 37 86 5 16 32
37 Less than pivot, swap with location pivotindex = 6, then increment pivotindex to 7
48 3 12 19 7 23 37 95 75 86 5 16 32
Pivot
More than pivot, no action, move to next element, index of next element is 9, pivotIndex still 7
48 3 12 19 7 23 37 95 75 86 5 16 32
Pivot
5 is Less than pivot, swap with location pivotindex = 7, then increment pivotindex to 8
48 3 12 19 7 23 37 5 75 86 95 16 32
Pivot
32 3 12 19 7 23 37 5 16 48 95 75 86
7 3 5 19 32 23 37 12 16 48 95 75 86
5 3 7 19 32 23 37 12 16 48 95 75 86
3 5 7 19 32 23 37 12 16 48 95 75 86
3 5 7 19 32 23 37 12 16 48 95 75 86
Pivot, middle element
Pivot
3 5 7 23 32 19 37 12 16 48 95 75 86
23
© Janice Regan, CMPT 129 2017
Sample Quick Sort: 6
A[0] A[1] A{2] A[3] A[4] A[5} A[6] A[7] A[8] A[9] A[10] A[11] A[12]
3 5 7 23 32 19 37 12 16 48 95 75 86
Pivot
3 5 7 23 19 32 37 12 16 48 95 75 86
Pivot
3 5 7 23 19 12 37 32 16 48 95 75 86
Pivot
3 5 7 23 19 12 16 32 37 48 95 75 86
Pivot
3 5 7 16 19 12 23 32 37 48 95 75 86
24
Sample Quick Sort: 7
A[0] A[1] A{2] A[3] A[4] A[5} A[6] A[7] A[8] A[9] A[10] A[11] A[12]
3 5 7 16 19 12 23 32 37 48 95 75 86
3 5 7 16 19 12 23 32 37 48 95 75 86
Pivot
3 5 7 19 16 12 23 32 37 48 95 75 86
Pivot
3 5 7 12 16 19 23 32 37 48 95 75 86
Pivot
3 5 7 12 16 19 23 23 37 48 95 75 86
3 5 7 12 16 19 23 32 37 48 75 95 86
Pivot
3 5 7 12 16 19 23 32 37 48 75 95 86
3 5 7 12 16 19 23 32 37 48 75 86 95
Pivot
5 3 12 19 7 32 23 16 37 48 86 95 75
5 3 7 19 12 32 23 16 37 48 86 95 75
3 5 7 19 12 32 23 16 37 48 86 95 75
3 5 7 19 37 16 32 23 12 48 86 95 75
Pivot, middle element
Pivot
3 5 7 16 37 19 32 23 12 48 86 95 75
3 5 7 16 37 19 32 23 12 48 86 95 75
Pivot First element smaller than pivot
3 5 7 16 12 19 32 23 37 48 86 95 75
Pivot
3 5 7 16 12 19 32 23 37 48 86 95 75
Pivot
First element larger than pivot
Pivot More than pivot
3 5 7 16 12 19 32 23 37 48 86 95 75
First element smaller than pivot
More than pivot
3 5 7 12 16 19 32 23 37 48 86 95 75
3 5 7 12 16 19 32 23 37 48 86 95 75
3 5 7 12 16 19 32 23 37 48 86 95 75
Pivot
Pivot
3 5 7 12 16 32 19 23 37 48 86 95 75
Pivot
3 5 7 12 16 32 19 23 37 48 86 95 75
First element larger than pivot
3 5 7 12 16 32 19 23 37 48 86 95 75
First element smaller than pivot Pivot
First element smaller than pivot
© Janice Regan, CMPT 129 2017 34
Sample Quick Sort: 8
A[0] A[1] A{2] A[3] A[4] A[5} A[6] A[7] A[8] A[9] A[10] A[11] A[12]
3 5 7 12 16 23 19 32 37 48 86 95 75
Pivot
3 5 7 12 16 23 19 32 37 48 86 95 75
3 5 7 12 16 19 23 32 37 48 86 95 75
3 5 7 12 16 19 23 32 37 48 86 95 75
Pivot
Pivot
3 5 7 12 16 19 23 32 37 48 95 86 75
A[0] A[1] A{2] A[3] A[4] A[5} A[6] A[7] A[8] A[9] A[10] A[11] A[12]
Pivot
3 5 7 12 16 19 23 32 37 48 95 86 75
First element larger than pivot
3 5 7 12 16 19 23 32 37 48 75 86 95
Pivot
3 5 7 12 16 19 23 32 37 48 75 86 95
3 5 7 12 16 19 23 32 37 48 75 86 95
Pivot
3 7 12 19 23 37 46 5 16 32 75 86 95
3 7 12 19 23 5 16 32 37 46 75 86 95
3 7 12 19 5 16 23 32 37 46 75 86 95