1. Define a recursive function in Scheme that implements quick sort, which can be specified by the following two rules.
a) The empty list is already sorted.
b) Non-empty lists can be sorted by sorting the tail values ≤ the head, sorting the tail values > the head, and then appending the resulting list on the either side of the head values.
I don't think you need to be the best candidate to do this simple task. defining recursive quickSort is one of the best examples when you want to see how Scheme stacks up to other languages when it comes to sorting.
In implementation first I created function called partition , which distributes the specified list across two smaller lists—one containing all those elements smaller than the specified pivot, and
another with everything else. Then I defined quickSort itself.