quick sort with hoare partition