冒泡算法

冒泡排序算法(从大到小):
  1. 首先从第一个元素开始往后比较,若后面的元素大于第一个元素,则将两者交换位置,直到最后一个,此时最大的元素排在第一位;
  2. 然后从第二个元素开始往后比较,进行跟上一步同样的操作,直到全部比较完;
  3. 比较完成后则数据按照从大到小排序

代码如下:

 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     }

 

posted on 2016-09-20 20:12  禁忌夜色  阅读(200)  评论(0编辑  收藏  举报

导航