Recursive sorting

We will implement the quick sort with an extra class that is in the qsort package along with the partitioning class, which is as follows:

package packt.java9.by.example.ch03.qsort; // imports deleted from the print public class Qsort<E>  { // constructor injected final fields deleted from the print     public void qsort(SortableCollection<E> sortable, int start, int end) {         if (start < end) {             final E pivot = sortable.get(start);             final Partitioner<E> partitioner = new Partitioner<>(comparator, swapper);             int cutIndex = partitioner.partition(sortable, start, end, pivot);             if (cutIndex == start) {                 cutIndex++;             }             qsort(sortable, start, cutIndex - 1);             qsort(sortable, cutIndex, end);         }     } }

The method gets SortableCollection<E> ...

Get Java 9 Programming By Example now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.