quicksort implemented by python


                               
               
                >>> def partition(A,p,r):
    x = A[r]
    i = p-1
    for j in range(p,r):
        if A[j] = x:
            i = i+1
            A,A[j]=A[j],A
    A[i+1],A[r] = A[r],A[i+1]
    return i+1
def quicksort(A,p,r):
    if p  r:
        q = partition(A,p,r)
        quicksort(A,p,q-1)
        quicksort(A,q+1,r)
x = [1,4,8,2]
p = 0
r = len(x)-1
quicksort(x,p,r)
print x
               
                 def randompartition(A,p,r):
    import random
    i = random.randrange(p,r)
    A[p],A[r] = A[r],A[p]
    return partition(A,p,r)