继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

数组操作之--冒泡排序

杨成浩
关注TA
已关注
手记 4
粉丝 8
获赞 134
//冒泡排序
/*冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。
冒泡排序算法的运作如下:比较相邻的元素。如果第一个比第二个大,就交换他们两个。
对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。
在这一点,最后的元素应该会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。
持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
 * */
public class shuzu {
    public void maopao(){
        //定义一个数组
        int[] s={2,13,4,5,19,98,65,24,7};
        //数组的长度是11所以只循环10就可以因为最后一个就是最小的不用做比较以免浪费内存开销
        for(int i=0;i<s.length-1;i++){
            /*
            * 数组的下标从0开始所以我们比较0和0+1的下标数值,
            * 然后再比较1和1+1下标的数值,之后依次类推比较其他的数值,
            * 上面的数组长度为9所以只需要循环比较8次就可以了,因为最后一次是下标8和8+1做的比较,
            * 如果循环9次那么就是9和9+1作比较就会产生数组下标越界异常
             * */
            for(int j=0;j<s.length-1;j++){
                //判断第0个下标是否大于第0+1个下标,如果是进行位置互换
                if(s[j]>s[j+1]){
                    int k=s[j];
                    s[j]=s[j+1];
                    s[j+1]=k;
                }
            }
        }
        //循环输出数组
        for(int f=0;f<s.length;f++){
            System.out.println(s[f]);
        }
    }
    public static void main(String[] args) {
        shuzu s=new shuzu();
        s.maopao();
    }
}

冒泡排序

打开App,阅读手记
21人推荐
发表评论
随时随地看视频慕课网APP

热门评论

冒泡主要体现的是小数上浮,大数沉底。重在交换。

查看全部评论