排序和搜索(九)——快速排序的python實現

【理解】快速排序是分治法的典型,我們首選一個樞軸值,樞軸值的作用是作爲比較對象將列表劃分爲大於它的一部分和小於他的一部分

【分析】

(1)分區總是出現在列表中間,則分區就可類比二分查找是O(logn);爲了找到分割點,需要針對樞軸值檢查 n 個項中的每一個。結果是 nlog⁡n

(2)最壞的情況,就是在首或尾分區,此時O(n^2)

【中值三技術】選擇樞紐值

【代碼】

1.簡單的我們將樞軸值設置在列表第一個


2.中值三技術

待補充




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章