快速排序的 Python 程序
本文将学习以下问题陈述的解决方案。
问题陈述 − 我们获得一个数组,我们需要使用快速排序的概念对它进行排序
这里我们首先对数组进行划分,并对单独的划分进行排序以获得已排序数组。
现在,让我们观察下面实现中的解决方案 −
示例
# divide function def partition(arr,low,high): i = ( low-1 ) pivot = arr[high] # pivot element for j in range(low , high): # If current element is smaller if arr[j] <= pivot: # increment i = i+1 arr[i],arr[j] = arr[j],arr[i] arr[i+1],arr[high] = arr[high],arr[i+1] return ( i+1 ) # sort def quickSort(arr,low,high): if low < high: # index pi = partition(arr,low,high) # sort the partitions quickSort(arr, low, pi-1) quickSort(arr, pi+1, high) # main arr = [2,5,3,8,6,5,4,7] n = len(arr) quickSort(arr,0,n-1) print ("Sorted array is:") for i in range(n): print (arr[i],end=" ")
输出
Sorted array is 2 3 4 5 5 6 7 8
所有变量都在本地范围内声明,其引用在上图中可见。
结论
本文介绍了如何制作快速排序的 Python 程序。
广告