Java數(shù)據(jù)結(jié)構(gòu)和算法-選擇排序算法思路

選擇排序

基本介紹:
選擇式排序也屬于內(nèi)部排序法,是從欲排序的數(shù)據(jù)中,按指定的規(guī)則選出某一元素,再依規(guī)定交換位置后達(dá)到排序的目的。

選擇排序思想:
選擇排序(select sorting)也是一種簡單的排序方法。它的基本思想是:第一次從arr[0] ~ arr[n-1]中選取最小值,與arr[0]交換,第二次從arr[1] ~ arr[n-1]中選取最小值,與arr[1]交換,第三次從arr[2] ~ arr[n-1]中選取最小值,與arr[2]交換,...,第i次從arr[i-1] ~ arr[n-1]中選取最小值,與arr[i-1]交換,...,第n-1次從arr[n-2] ~ arr[n-1]中選取最小值,與arr[n-2]交換,總共通過n-1次,得到一個按排序碼從小到大排列的有序序列。

原始的數(shù)組:101,34,119,1
第一輪排序:1,34,119,101
第二輪排序:1,34,119,101
第三輪排序:1,34,101,119
說明:
1.選擇排序一共有數(shù)組大小-1輪排序
2.每1輪排序,又是一個循環(huán),循環(huán)的規(guī)則
2.1先假定當(dāng)前這個數(shù)是最小數(shù)
2.2然后和后面的每個數(shù)進(jìn)行比較,如果發(fā)現(xiàn)有比當(dāng)前數(shù)更小的數(shù),就重新確定最小數(shù),并得到下標(biāo)
2.3當(dāng)遍歷到數(shù)組的最后時,就得到本輪最小數(shù)和下標(biāo)
2.4交換
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容