中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

python快速排序算法怎么實現

小億
109
2023-08-15 18:20:44
欄目: 編程語言

快速排序是一種常用的排序算法,其算法思想是通過遞歸地將數組分為較小和較大的兩個子數組,然后不斷重復這個過程,直到整個數組有序。

下面是用Python實現的快速排序算法:

def quick_sort(arr):
if len(arr) <= 1:
return arr
pivot = arr[len(arr) // 2]  # 選擇中間元素作為基準點
left = [x for x in arr if x < pivot]  # 小于基準點的元素
middle = [x for x in arr if x == pivot]  # 等于基準點的元素
right = [x for x in arr if x > pivot]  # 大于基準點的元素
return quick_sort(left) + middle + quick_sort(right)  # 遞歸地對左右子數組進行排序
# 示例
arr = [5, 3, 8, 2, 7, 1, 6, 4]
sorted_arr = quick_sort(arr)
print(sorted_arr)  # 輸出:[1, 2, 3, 4, 5, 6, 7, 8]

在這個實現中,我們選擇中間元素作為基準點,然后分別將小于、等于和大于基準點的元素放入對應的子數組中。然后,我們遞歸地對左右子數組進行排序,并將排好序的左子數組、中間元素和右子數組連接起來,最終得到整個數組的有序序列。

0
和田县| 河源市| 新乡县| 固原市| 会东县| 罗山县| 洪洞县| 荔波县| 化德县| 梓潼县| 女性| 莱州市| 汪清县| 东兰县| 长白| 沁水县| 四平市| 兴山县| 嘉黎县| 叶城县| 盘山县| 大庆市| 建瓯市| 九江县| 广州市| 鱼台县| 封开县| 渑池县| 东平县| 行唐县| 静宁县| 桃江县| 海安县| 云龙县| 栾川县| 麻栗坡县| 岳池县| 建始县| 永宁县| 富阳市| 南丹县|