選擇排序演算法java版
阿新 • • 發佈:2019-01-29
用jjava語言實現選擇排序演算法
程式碼如下:
/**
* 選擇排序
*@author 屌絲程式猿_TNT_
*/
public class ArrayTest {
/**
* 測試方法
* @param args
*/
public static void main(String[] args) {
int[] arr = {11,27,422,42,5,26,23,2,3,45,35,64};
sort(arr);
}
/**
* 選擇排序演算法
*
* @param arr
*/
private static void sort(int[] arr) {
System.out.println("排序之前:");
for (int i : arr) {
System.out.print(i+"\t");
}
System.out.println("\n");
int temp = 0;//第三方變數,方便換位
//外層for迴圈,變數變化一次,內層for執行一遍
for (int i = 0; i < arr.length; i++) {//確定第一次要比較的元素
//注意點,j=i+1
for (int j = i+1; j < arr.length; j++) {//外層迴圈的i元素和內層迴圈剩餘的元素比較
if (arr[i]>arr[j]) {//如果前面的元素大於後面的元素,則進行換位。
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
System.out.println("迴圈了" +(i+1)+"次");
for (int k : arr) {
System.out.print(k+"\t");
}
System.out.println("\n");
}
System.out.println("\n");
System.out.println("排序之後:");
for (int i : arr) {
System.out.print(i+"\t");
}
}
}