排序算法(一)冒泡排序
程序员文章站
2022-03-24 13:46:47
...
冒泡排序(Bubble Sort,*译为:泡沫排序或气泡排序)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。
以将数组 number[n] 中的n个数从小到大排序为例:
第一趟,比较number[0] 和 number[1] 的大小,如果 number[0] > number[1] , 则利用一个中间变量,将两者位置互换;再比较number[1] 和 number[2] ; 再比较number[2] 和number[3]…共比较 n-1 次,结果是将整个数组中最大的数放在了number[n-1]的位置。
第二趟,重复第一趟中的动作,共比较 n-2 次。
第三趟,…
…
共循环n-1趟
代码:
int[] num = {4,5,3,1,9,8,4,5,6,3,1,7,5,2};
for(int i = 0 ; i < num.length-1; i ++) {
for ( int j = 0 ; j < num.length-i-1 ; j ++) {
if(num[j] > num[j+1]) {
int x = num[j];
num[j] = num[j+1];
num[j+1] = x;
}
}
}
for(int i = 0 ; i < num.length ; i ++) {
System.out.print(num[i]+" ");
}
运行结果为
1 1 2 3 3 4 4 5 5 5 6 7 8 9
下一篇: 排序算法(一)冒泡排序