用于快速排序的 Python 程序
pythonserver side programmingprogramming
在本文中,我们将了解下面给出的问题陈述的解决方案。
问题陈述− 我们有一个数组,我们需要使用快速排序的概念对其进行排序
在这里,我们首先对数组进行分区,并对单独的分区进行排序以获得排序后的数组。
现在让我们观察下面实现中的解决方案 −
示例
# 除法函数 def partion(arr,low,high): i = ( low-1 ) pivot = arr[high] # 枢轴元素 for j in range(low , high): # 如果当前元素较小 if arr[j] <= pivot: # 增量 i = i+1 arr[i],arr[j] = arr[j],arr[i] arr[i+1],arr[high] = arr[high],arr[i+1] return ( i+1 ) # 排序 def quickSort(arr,low,high): if low < high: # 索引 pi = partition(arr,low,high) # 对分区进行排序 quickSort(arr, low, pi-1) quickSort(arr, pi+1, high) # 主要 arr = [2,5,3,8,6,5,4,7] n = len(arr) quickSort(arr,0,n-1) print ("排序后的数组是:") for i in range(n): print (arr[i],end=" ")
输出
排序后的数组为 2 3 4 5 5 6 7 8
所有变量均在本地范围内声明,其引用如上图所示。
结论
在本文中,我们了解了如何编写用于快速排序的 Python 程序