100 likes | 168 Views
Learn the basics of the Quick Sort algorithm, a fundamental sorting method in data structures using C. Understand how to set arrays, select pivot keys, and efficiently sort elements. This guide references the textbook "Fundamentals of Data Structures in C."
E N D
Quick Sort Instructor : Prof. Jyh-Shing Roger Jang Designer:Shao-Huan Wang The ideas are reference to the textbook “Fundamentals of Data Structures in C “ .
Quick Sort Set an array and add left and right to record the first and last indexes. Take a pivot key at first term. Scan from left to right, if the element larger than pivot key, finding a smaller item from right to left. 26 5 37 1 61 11 59 15 48 19 0 9
Quick Sort Set an array and add left and right to record the first and last indexes. Take a pivot key at first term. Scan from left to right, if the element larger than pivot key, finding a smaller item from right to left. If j <= i (j : right to left; i : left to right), change the j and pivot key. Take the left and right array of pivot key to do the same way 26 5 19 1 15 11 59 48 37 0 9 61
Quick Sort Set an array and add left and right to record the first and last indexes. Take a pivot key at first term. Scan from left to right, if the element larger than pivot key, finding a smaller item from right to left. If j <= i (j : right to left; i : left to right), change the j and pivot key. Take the left and right array of pivot key to do the same way 11 5 19 1 15 26 59 48 37 0 9 61
Quick Sort Set an array and add left and right to record the first and last indexes. Take a pivot key at first term. Scan from left to right, if the element larger than pivot key, finding a smaller item from right to left. If j <= i (j : right to left; i : left to right), change the j and pivot key. Take the left and right array of pivot key to do the same way 11 5 19 15 26 59 48 37 0 9 1 61
Quick Sort Set an array and add left and right to record the first and last indexes. Take a pivot key at first term. Scan from left to right, if the element larger than pivot key, finding a smaller item from right to left. If j < i (j : right to left; i : left to right), change the j and pivot key. Take the left and right array of pivot key to do the same way If j = pivot key, don’t change. 5 11 19 15 26 59 48 37 0 9 1 61
Quick Sort Set an array and add left and right to record the first and last indexes. Take a pivot key at first term. Scan from left to right, if the element larger than pivot key, finding a smaller item from right to left. If j <= i (j : right to left; i : left to right), change the j and pivot key. Take the left and right array of pivot key to do the same way If j = pivot key, don’t change. 5 11 19 15 26 59 48 37 0 9 1 61
Quick Sort Set an array and add left and right to record the first and last indexes. Take a pivot key at first term. Scan from left to right, if the element larger than pivot key, finding a smaller item from right to left. If j <= i (j : right to left; i : left to right), change the j and pivot key. Take the left and right array of pivot key to do the same way If j = pivot key, don’t change. 5 11 15 26 59 48 37 0 9 1 19 61
Quick Sort Set an array and add left and right to record the first and last indexes. Take a pivot key at first term. Scan from left to right, if the element larger than pivot key, finding a smaller item from right to left. If j <= i (j : right to left; i : left to right), change the j and pivot key. Take the left and right array of pivot key to do the same way If j = pivot key, don’t change. 5 11 15 26 48 37 59 0 9 1 19 61