Iam_Sandeep

QuickSort

Apr 3rd, 2022
1,704
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.02 KB | None | 0 0
  1. #pivot =first element
  2. def quickSort(arr):
  3.     def qsort(l,r):
  4.         if l<r:
  5.             #parition index find
  6.             swap=l
  7.             piv=arr[l]
  8.             for j in range(l+1,r+1):
  9.                 if arr[j]<piv:
  10.                     swap+=1
  11.                     arr[swap],arr[j]=arr[j],arr[swap]
  12.             #we swap with l
  13.             arr[swap],arr[l]=arr[l],arr[swap]
  14.             #quick sort
  15.             qsort(l,swap-1)
  16.             qsort(swap+1,r)
  17.     qsort(0,len(arr)-1)
  18.     return arr
  19. #pivot =last element
  20. def quickSort(arr):
  21.     def qsort(l,r):
  22.         if l<r:
  23.             #find parition index
  24.             piv=arr[r]
  25.             swap=l-1
  26.             for j in range(l,r):
  27.                 if arr[j]<=piv:
  28.                     swap+=1
  29.                     arr[j],arr[swap]=arr[swap],arr[j]
  30.             #swap+1 is the partition index
  31.             #we swap with r
  32.             arr[swap+1],arr[r]=arr[r],arr[swap+1]
  33.             qsort(l,swap)
  34.             qsort(swap+2,r)
  35.     qsort(0,len(arr)-1)
  36.     return arr
  37.  
  38.            
  39.  
Advertisement
Add Comment
Please, Sign In to add comment