如何理解快速排序
阿新 • • 發佈:2020-10-20
如圖所示,
這是參考別的視訊做出來的理解思路,我覺得這種辦法我理解的最好,一下子就點透了,思路總結就是:
找一個空白位置 當做軸數字(一般就是第一個數字)的對比位置 則 軸數字位置就空出來了,依次按照
從後往前找一個比軸數字小的 塞入空白位置,此時空出來一個新的空白位置
從前往後找一個比軸數字大的 塞入空白位置,此時空出來一個新的空白位置
。。。
之後按照上邊的兩部,直到進行完畢,則軸數字塞入最後的空白位置,此時,陣列被分割成兩個新的陣列,軸數字之前一個 軸數字之後一個!
按照上邊的順序再分別對兩個新陣列進行排序,還是按照 先找軸數字,留出空白,從後往前找比軸數字小的,從前往後找比軸數字大的。。。之後塞入軸數字的順序進行,直到最後,排序完成!
轉載於:https://my.oschina.net/rainwz/blog/3031458