一文搞定十大排序算法(动画图解)
一文搞定十大排序算法(動(dòng)畫圖解)
排序算法是測(cè)試開發(fā)技術(shù)面試中的常考題目,本文用動(dòng)畫圖解面試必會(huì)十大排序算法 ,由淺入深、形象記憶,再也忘不掉。
排序基礎(chǔ)知識(shí)
排序的定義
排序 ,就是重新排列表中的元素 ,使表中的元素滿足按關(guān)鍵字遞增或遞減的過程。為了査找方便 ,通常要求計(jì)算機(jī)中的表是按關(guān)鍵字有序的。
排序的確切定義如下:
輸入: n個(gè)記錄 R1,R2 ,R3…Rn, 對(duì)應(yīng)的關(guān)鍵字為 K1,K2,K3…Kn 輸出: 輸入序列的一個(gè)重排R1’
,R2’,R3’…Rn’, 使得有K1’ K2’ K3’… Kn’ (其中 可以換成其它的比較大小符號(hào)) 。算法的穩(wěn)定性:
若待排序表中有兩個(gè)元素 Ri 和 Rj,其對(duì)應(yīng)的關(guān)鍵字 keyi = kcyj , 且在排序前 Ri 在 Rj 的前面 。使用某一排序算法排序后 ,Ri 仍然在 Rj 的前面盡的前面