Implementation

Before we delve into the code, let's run through the sorting of a list using the quick sort algorithm. The partitioning step is very important to understand so we'll tackle that operation first.

Consider the following list of integers. We shall partition this list using the partition function below:

     def partition(unsorted_array, first_index, last_index):         pivot = unsorted_array[first_index]         pivot_index = first_index         index_of_last_element = last_index         less_than_pivot_index = index_of_last_element         greater_than_pivot_index = first_index + 1         ... 

The partition function receives the array that we need to partition as its parameters: ...

Get Python Data Structures and Algorithms now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.