java選擇排序演算法
阿新 • • 發佈:2021-02-01
java選擇排序演算法
一,選擇排序演算法簡介
- 選擇排序是較為簡單的排序演算法之一,它的原理就是每次把剩餘元素中最小的那個挑選出來放在這些剩加粗樣式餘元素的首位置。
- 舉個例子舉例:陣列 int[] arr={11,34,120,1};
第一趟:交換 1 和 11 的位置
第二趟:交換 11 和34的位置
第三趟:交換34和120的位置
二,選擇排序演算法程式碼實現
public class huashanzhizai {
public static void main(String[] args) {
huashanzhizai kim= new huashanzhizai();
kim.SelectSort();
}
public void SelectSort(){
int[] arr=new int[]{11,34,120,1};
System.out.println("排序前:");
System.out.println(Arrays.toString(arr));
int tmp;
for(int i=0;i<arr.length-1;i++){
for (int j=arr.length-1;j>i;j--){
if(arr[j]<arr[i]){
tmp=arr[j];
arr[j]=arr[i];
arr[i]=tmp;
}
}
System.out.println("第"+(i+1)+"次排序後:");
System.out.println(Arrays. toString(arr));
}
}
}
三,原理分析
1.選擇排序一共有陣列大小 -1 輪排序
2.每1輪排序,又是一個迴圈,迴圈的規則(程式碼)
2.1先假定當前這個數是最小數
2.2然後和後面的每個數進行比較,如果發現有比當前數更小的數,就重新確定最小數,並得到下標
2.3當遍歷到陣列的最後時,就得到本輪最小數和下標
2.4交換元素