失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 冒泡排序法(升序)

冒泡排序法(升序)

时间:2019-04-18 06:58:37

相关推荐

冒泡排序法(升序)

核心思想:相邻两个进行比较,每一轮找出最大的一个放在最后面。

public class MaoPao{public static void main(String []args){int[] a={8,3,6,2,1,5,4};//未排序前,遍历数组for(int i=0;i<a.length;i++){System.out.print(a[i]+"\t");}System.out.println();//冒泡排序法for(int i=0;i<a.length-1;i++){for(int j=0;j<a.length-1-i;j++){//比较a[j]和a[j+1]if(a[j]>a[j+1]){int k=a[j];a[j]=a[j+1];a[j+1]=k;}}}//经过冒泡排序后,打印出来for(int i=0;i<a.length;i++){System.out.print(a[i]+"\t");}}}

未排序前数组: 0 1 2 3 4 5 6

8 3 6 2 1 5 4

(j)

第一轮(i=0) 0~13 8 6 2 1 5 4

1~23 6 8 2 1 5 4

2~33 6 2 8 1 5 4

3~43 6 2 1 8 5 4

4~53 6 2 1 5 8 4

5~63 6 2 1 5 4 8

第二轮(i=1) 0~13 6 2 1 5 4 8

1~23 2 6 1 5 4 8

2~33 2 1 6 5 4 8

3~43 2 1 5 6 4 8

4~53 2 1 5 4 6 8

第三轮 (i=2)0~12 3 1 5 4 6 8

1~22 1 3 5 4 6 8

2~32 1 3 5 4 6 8

3~42 1 3 4 5 6 8

第四轮 (i=3) 0~11 2 3 4 5 6 8

1~21 2 3 4 5 6 8

2~31 2 3 4 5 6 8

第五轮 (i=4) 0~11 2 3 4 5 6 8

1~21 2 3 4 5 6 8

第六轮 (i=5) 0~11 2 3 4 5 6 8

通过上面的例子可以看出,外层循环变量i=5,可以表示为i<数组的长度-1,内层循环变量ji有关,可以表示为j<数组的长度-1-i

运行结果如图:

如果觉得《冒泡排序法(升序)》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。