
def quicksort(L):
    quicksort_helper(L, 0, len(L)) 
    
def quicksort_helper(L, a, c):
    if a < c: # solange eine Liste nicht leer ist ...
        b = partition(L, a, c) # 
        quicksort_helper(L, a, b-1)
        quicksort_helper(L, b+1, c)

def partition(L, a, c):
    pivot = L[c-1]
    i = a-1
    for j in range(a, c-1):
        if L[j] <= pivot:
            i += 1
            L[i], L[j] = L[j], L[i]
    L[i+1], L[c-1] = L[c-1], L[i+1]
    return i+1

            
    

    


    
    
