👤

Evaluate the following algorithm i terms of its efficiency, correctness, and clarity. Explain your answer in 3-5 sentences.
def partition(arr, low, high):
i = (low -1)
Pivot= arr (high)
For J in range (low, high):
if arr (J) <=pivot
I = I + 1
arr(I), arr(j) = arr(j), arr(I)
arr(i + 1), arr(high) = arr(high), arr(i + 1)
return (i + 1)

def quickSort(arr, low, high):
if len(arr) == 1:
return arr
if low < high:
pi = partition(arr, low, high)
quickSort(arr, low, pi - 1)
quickSort(arr, pi + 1, high)