杂记:冒泡排序

 

冒泡排序是指,在一列无序数组中从左到右遍历排序,如数列:2,13,10,623,2;(升序排列)开始时2和13比较,13比2大符合,之后13与10比较,13大于10,交换位置,数列就成{2,10,13,623,2}。13再与与623比较,13小,不变。623再与2比较。623大,交换位置、第一轮排列结束,数列呈{2,10,13,2,623},最大的数像是泡泡一样冒到了最右边。重复上述步骤就是冒泡排序。

是序列中先从最左边开始,相邻的两个元素开始做比较。也即是第i+1个与第i个进行比较,如果(i+1)<i就将其位置替换。(升序)把小的排在前面。排序需要遍历n-1次,第一次遍历中数列需要比较n-1,第一次遍历结束,最小的元素就会被替换到最左边。第二次遍历,数列需要比较n-2次,第二小的元素就会被替换到左边第二的位置。以此类推,最终数列呈现从左到右依次升序的形式。
for(int j=0;j<bubble.length-1;j++){//2,控制内循环的次数,j=0因为bubble[0]是第一个元素。
 int[] bubble = {89, 42, 6552, 651, 31, 53, 613, 589};
        
        for (int i = 1; i < bubble.length; i++) {//控制遍历的次数
            for (int j = 0; j < (bubble.length - i); j++) {//控制该次遍历下的数据的比较轮数
                if (bubble[j] > bubble[j + 1]) {
                    int tem = bubble[j];
                    bubble[j] = bubble[j + 1];
                    bubble[j + 1] = tem;

                }
            }
        }
31	42	53	89	589	613	651	6552	
Process finished with exit code 0

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值