Partitioned QSort