JAVA排序算法(一)冒泡排序、选择排序
/* 冒泡排序
* * 相邻的元素,两两比较。如果第一个比第二个大,就交换他们两个。 大的后移 * 对每一对相邻元素做同样的工作,这样第一轮结束后,最大值在最后一个。 */ public static void bubbleSort(int [] arr){ int temp = 0; for(int i=0;i<arr.length-1;i++){ for(int j=0;j<arr.length-1;j++){ if(arr[j]>arr[j+1]){ temp = arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } } /* * 选择排序 * 将第一个元素,依次和全部的元素比较,将这个元素移动到最大的位置, * 第一轮结束后,最大值在最后一个 * 第二轮比较的数量会少1 */ public static void selectSort(int [] arr){ int temp = 0 ; for(int i=0;i<arr.length;i++){ int index = i;//待确定的位置 for(int j=i;j<arr.length;j++){ if(arr[i]>arr[j]){//第一个比第二个大 记录位置 index = j; } } //交换 temp = arr[i]; arr[i]= arr[index]; arr[index]=temp; } }