冒泡排序

来源:互联网 发布:php 存储json 编辑:程序博客网 时间:2024/06/05 23:55

实现代码:结果从小到大

for(int j = 0 ;j < score.length - i - 1; j++){    //对当前无序区间score[0......length-i-1]进行排序(j的范围很关键,这个范围是在逐步缩小的)    if(score[j] > score[j + 1]){    //把小的值交换到后面        int temp = score[j];        score[j] = score[j + 1];        score[j + 1] = temp;    }}

说明:1.这里边有两个循环:第一个循环是整个要排序的次数(就是要排序数据的个数减去1,这里有待商榷,其实有些数列不需要排这么多次数,但是排这么多次数

               是不会错的,只是后边几次排的可能完全一样,也就是提前就排出了结果)

             2.第二个循环就是在第一个循环队列的基础上进行数据比较,可以想象有一个游标,从指着队列的第一个数开始,比较前一个和后一个的大小,然后交换顺序,把

                小的放前边,然后游标移动到第二个(队列里的数在边,但游标是从1到最好一个的),然后再比较,再交换,然后再移动游标,最后一个游标跟第一个循环的次数

               有关,因为第一个循环做完,肯定会找出一个最大的数出来放到后边,所以第二个游标每次要移动的位置是越来越少的

           3.等第一个循环做完,就出来结果了

           


0 0