Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def partition(l, low, high):
- pivot = l[high]
- i = low - 1
- print(l)
- print("pivot = " + str(pivot))
- for j in range(low, high):
- if l[j] < pivot:
- i += 1
- swap(l, i, j)
- print("j = " + str(j) + ", i = " + str(i) )
- print(l)
- i += 1
- swap(l,i,high)
- print("i = " + str(i))
- print(l)
- print()
- return i
- def quicksort(l, low, high):
- if low < high:
- pi = partition(l, low, high)
- quicksort(l, low, pi - 1) #lato sinistro della lista
- quicksort(l, pi + 1, high) #lato destro della lista
- def swap(l,i,j):
- temp = l[i]
- l[i] = l[j]
- l[j] = temp
- l = [9, 5, 1, 3, 8, 6, 4, 7]
- quicksort(l, 0, len(l) - 1)
- print()
- print("lista ordinata L = " + str(l))
Advertisement
Add Comment
Please, Sign In to add comment