冒泡算法
冒泡排序算法(从大到小):
-
首先从第一个元素开始往后比较,若后面的元素大于第一个元素,则将两者交换位置,直到最后一个,此时最大的元素排在第一位;
- 然后从第二个元素开始往后比较,进行跟上一步同样的操作,直到全部比较完;
- 比较完成后则数据按照从大到小排序
代码如下:
1 /** 2 * 冒泡排序-从大到小 3 * 4 * @param sort 5 * 排序元素 6 * @return 7 * 返回排序后的下标集合 8 */ 9 private int[] bubblu_sort(long[] sort){ 10 11 int index[] = new int[sort.length]; 12 int k = 0; 13 for(int i = 0; i < sort.length; i++){ 14 int temp_index = 0; 15 for(int j = i; j < sort.length; j++){ 16 if(sort[i] < sort[j]){ 17 long temp_val = sort[i]; 18 sort[i] = sort[j]; 19 sort[j] = temp_val; 20 temp_index = j; 21 } 22 } 23 index[k++] = temp_index; 24 } 25 return index; 26 27 }