用Python怎麼實現快速排序

小老鼠
發布: 2023-12-18 15:37:53
原創
1048 人瀏覽過

用Python實現快速排序的方法:1、定義一個名為quick_sort的函數,使用遞歸的方法來實現快速排序;2、檢查數組的長度,如果長度小於等於1,則直接傳回數組,否則,選擇數組中的第一個元素作為樞紐元素(pivot),然後將數組分成比樞紐元素小和比樞紐元素大的兩個子數組;3、將這兩個子數組和樞紐元素連接起來,形成排序好的陣列即可。

用Python怎麼實現快速排序

本教學作業系統:windows10系統、Python3.11.4版本、Dell G3電腦。

以下是使用Python實作快速排序的方法:

def quick_sort(arr):
    if len(arr) <= 1:
        return arr
    else:
        pivot = arr[0]
        less_than_pivot = [x for x in arr[1:] if x <= pivot]
        greater_than_pivot = [x for x in arr[1:] if x > pivot]
        return quick_sort(less_than_pivot) + [pivot] + quick_sort(greater_than_pivot)
# 示例
arr = [3, 6, 8, 10, 1, 2, 1]
sorted_arr = quick_sort(arr)
print(sorted_arr)
登入後複製

在這個範例中,我們定義了一個名為quick_sort的函數,它使用遞歸的方法來實現快速排序。函數先檢查數組的長度,如果長度小於等於1,則直接傳回數組。否則,我們選擇數組中的第一個元素作為樞紐元素(pivot),然後將數組分成比樞紐元素小和比樞紐元素大的兩個子數組。最後,我們將這兩個子陣列和樞紐元素連結起來,形成排序好的陣列。

以上是用Python怎麼實現快速排序的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板