1. 程式人生 > >通俗理解快排演算法

通俗理解快排演算法

快排是一種排序演算法,是冒泡演算法的一個優化。

快排的思想也比較簡單,對於一個數據長度大於1的陣列,隨機找出其中一個元素來作為基準元素,然後再遍歷一遍該陣列,同時將每個元素與基準元素進行比較,如果某元素的值大於基準元素則把該元素放在基準元素的右邊,反之如果某元素的值小於基準元素則把該元素放在基準元素的左邊,這樣遍歷一遍下來基準元素左邊的元素都小於基準元素,基準元素右邊的元素都大於基準元素。接下來再依次把基準元素左右兩邊的元素按照上面同樣的步驟做同樣的處理,最終得到的就是一個有序陣列。

 

下面分別使用php和python演示快排演算法。

 

php版本

 

 

python版本

 

 

 

總結快速排序演算法的思想:

1、取列表中一個元素作為基準值,首次遍歷列表後,讓基準值左側的元素都比它小,讓基準值右側的元素都比它大。

2、分別對左側和右側的元素遞迴執行第一步操作。