From f070a60ef2bb7679c8d8316fe4041230bbd65391 Mon Sep 17 00:00:00 2001 From: Snehil Yadav Date: Thu, 13 Oct 2022 23:35:45 +0530 Subject: [PATCH] Create quicksort.py --- python/quicksort.py | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 python/quicksort.py diff --git a/python/quicksort.py b/python/quicksort.py new file mode 100644 index 0000000..f2f0967 --- /dev/null +++ b/python/quicksort.py @@ -0,0 +1,39 @@ +#QUICKSORT ALGORITHM + +def partition(array, low, high): + + pivot = array[high] + + i = low - 1 + + for j in range(low, high): + if array[j] <= pivot: + + i = i + 1 + + (array[i], array[j]) = (array[j], array[i]) + + (array[i + 1], array[high]) = (array[high], array[i + 1]) + + return i + 1 + +def quickSort(array, low, high): + if low < high: + + pi = partition(array, low, high) + + quickSort(array, low, pi - 1) + + quickSort(array, pi + 1, high) + + +data = [1, 7, 4, 1, 10, 9, -2] +print("Unsorted Array") +print(data) + +size = len(data) + +quickSort(data, 0, size - 1) + +print('Sorted Array in Ascending Order:') +print(data)