選擇排序演算法【親測】
阿新 • • 發佈:2019-01-05
-
選擇排序演算法
public class Sort { /** * 選擇排序 */ void selectSort(int arr[],int len){ int min,temp,j,i,c1=0,c2=0; for(i=0;i<len-1;i++){ min=i; for(j=i+1;j<len;j++){ c1++; if (arr[min]>arr[j]){ min=j; } } if(min!=i){ c2++; temp=arr[min]; arr[min]=arr[i]; arr[i]=temp; } } System.out.println("比較"+c1+"次,"+"移動"+c2+"次"); } }
-
測試類
public class Test { public static void main(String[] args) { int[] arr=new int[]{5, 2, 6, 9, 3, 0, 1, 7, 4, 8}; Sort s=new Sort(); s.selectSort(arr,arr.length);//比較45次,移動6次 for(int k=0;k<arr.length;k++){ System.out.print(arr[k]); } System.out.println(); } }
根據測試結果發現,選擇排序優於氣泡排序!