假設有乙個陣列,int arr = ;
先假如陣列第乙個元素2為最小值,依次與剩下的元素進行比較,如果發現有元素比這個值更小就重新整理最小值,第一輪結束後會找到本輪的最小值,然後讓這個最小值與元素2進行交換。
第乙個元素最小值確定之後,再假設第二個元素7為最小值,依次與-1,10,19如果中間發現有比7小的就重新整理最小值,直到遍歷完這個陣列,讓本輪最小值的元素與元素7進行交換
從第三個元素開始,發現依次找最小值,比較…第四第五個元素同上
依次到倒數第二個元素確定之後結束
注意事項:如果發現最小值就是自己就不要進行交換操作
int
arr =
;//第1輪
int minindex =0;
int min = arr[0]
;for
(int j =0+
1; j < arr.length; j++)}
if(minindex !=0)
system.out.
println
(arrays.
tostring
(arr));
//第2輪
minindex =1;
min = arr[1]
;for
(int j =1+
1; j < arr.length; j++)}
if(minindex !=1)
system.out.
println
(arrays.
tostring
(arr));
//第3輪
minindex =2;
min = arr[2]
;for
(int j =2+
1; j < arr.length; j++)}
if(minindex !=2)
system.out.
println
(arrays.
tostring
(arr));
//第4輪
minindex =3;
min = arr[3]
;for
(int j =3+
1; j < arr.length; j++)}
if(minindex !=3)
system.out.
println
(arrays.
tostring
(arr)
);
int
arr =
;for
(int i=
0;i1;i++)}
if(minindex != i)
system.out.
println
(arrays.
tostring
(arr));
}
資料結構與演算法 排序 選擇排序
資料結構與演算法 排序 選擇排序 sort selectsort include includevoid selectsort int list,int len if print list,len for selectsort int minkey int list,int i,int len if...
資料結構與演算法 選擇排序演算法
選擇排序的基本思想是 如果共有n個元素,那麼第一輪的時候就再n個元素中找到最小的元素,如果它不是排在第乙個,就讓它與第乙個元素交換位置。第二輪再在除去最前面的元素 也就是上一輪找到的最小元素 中,再找到最小的元素,使它的位置確定在當前這些元素的最前面。以此類推。每一輪都可以確定乙個元素的位置,只需要...
資料結構與演算法 選擇排序
選擇排序 從小到大 的基本思想是,首先,選出最小的數,放在第乙個位置 然後,選出第二小的數,放在第二個位置 以此類推,直到所有的數從小到大排序。在實現上,我們通常是先確定第i小的數所在的位置,然後,將其與第i個數進行交換。下面,以對 3 2 4 1 進行選擇排序說明排序過程,使用min index ...