by partitioning it into two partsand so oncreating smaller and smaller subarrays when the sorting process is completeeach dotted line provides visual record of one of the sorted subarrays the horizontal range of the line shows which bars were part of the subarrayand its vertical position is the pivot value (the height of the pivotthe total length of all these lines on the display is measure of how much work the algorithm has done to sort the arraywe'll return to this topic later each dotted line (except the shortest onesshould have line below it (probably separated by othershorter linesand line above it that together add up to the same length as the original line (less one barthese are the two partitions into which each subarray is divided the details for more detailed examination of quicksort' operationswitch to the -bar display in the quicksort applet and step through the sorting process you'll see how the pivot value corresponds to the height of the pivot on the right side of the arrayhow the algorithm partitions the arrayswaps the pivot into the space between the two sorted groupssorts the shorter group (using many recursive calls)and then sorts the larger group figure shows all the steps involved in sorting bars the horizontal brackets under the arrays show which subarray is being partitioned at each stepand the circled numbers show the order in which these partitions are created pivot being swapped into place is shown with dotted arrow the final position of the pivot is shown as dotted cell to emphasize that this cell contains sorted item that will not be changed thereafter horizontal brackets under single cells (steps and are base case calls to recquicksort()they return immediately