Page 8 of 10
Descriviamo come è fatta questa funzione al suo interno con la pseudo-codifica:
Incominciamo col fissare il perno su sx (p=sx) poi decrementiamo dx mentre a[p] è minore o uguale di a[dx]. Quando a[p] diventa maggiore di a[dx], scambiamo i due elementi.
Fissiamo il perno su dx (p=dx); incrementiamo sx mentre a[p] è maggiore o uguale di a[sx]. Quando a[p] diventa minore di a[sx], scambiamo i due elementi e ricominciamo.
Quando anche il ciclo esterno sarà concluso, avremo trovato la posizione corretta del perno e restituiamo la sua posizione al programma chiamante (return(p);)
Questa funzione sarà richiamata dalla funzione QuickSort, descritta di seguito.