const partSort = (array, left, right) => {
const pivot = array[right]
while(left < right) {
while(left < right && array[left] <= pivot) {
left++
}
array[right] = array[left]
while(left < right && array[right] >= pivot) {
right--
}
array[left] = array[right]
}
array[left] = pivot
return right
}
const quickSort = (array, left = 0, right = array.length - 1) => {
if (left < right) {
const pivotIndex = partSort(array, left, right)
quickSort(array, left, pivotIndex - 1)
quickSort(array, pivotIndex + 1, right)
}
}
const arr = [3,44,38,5,47,15,36,26,27,2,46,4,19,50,48]
quickSort(arr)
console.log(arr)