冒泡排序小记
原理:扫描一个序列,扫描的同时,比较相邻两个数的大小,如果前一个比后一个大,那么就交换位置,即将大的数后移!每经过一趟排序,就会有一个大的被移至末尾,经过多趟排序后,序列就变成有序的啦!在每趟结束时可以记录一下最大元素的位置,这样下一趟只需要比较到该位置即可,达到了优化的目的!
总结规律:
n趟排序,只需要进行n - 1趟
第1趟 排序n - 1次
第2趟 排序n - 2次
。
。
。
第i趟 排序n - i次
排序算法代码如下:
public static void sort(int[] array){
int temp;
for(int i=0;i<array.length;i++){
for(int j=0;j<array.length-1-i;j++){
if(array[j] > array[j+1]){
temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
}
}
}
算法是编程人员必回的知识呢!千万别小看了它!!!!