沒(méi)錯(cuò)。是時(shí)候采用另一種排序算法了。這次讓我們進(jìn)行選擇排序。
簡(jiǎn)而言之,選擇排序是我們?cè)L問(wèn)每個(gè)值的地方,然后將其與所有后續(xù)值進(jìn)行比較,以便找到最小的值。當(dāng)我們找到最小值時(shí),我們將用當(dāng)前值交換它。
如果我們對(duì)輸入數(shù)組中的每個(gè)值重復(fù)此過(guò)程,我們最終會(huì)得到一個(gè)排序的輸出(升序)。
圖表:
我將從插入排序的相同輸入開始:
從第零個(gè)索引開始。
下面是一個(gè)完整的演練:
這是一個(gè)簡(jiǎn)單的過(guò)程,實(shí)施起來(lái)很有趣。
代碼:
到目前為止,我已經(jīng)發(fā)布了氣泡,插入和選擇排序。我們將看看我多久可以把它變成更令人興奮/更復(fù)雜的排序算法(合并排序,基數(shù)排序等)。