zoukankan      html  css  js  c++  java
  • 二维数组与冒泡排序2

    记住数组顺序是从0开始的!!!

    记住数组顺序是从0开始的!!!

    记住数组顺序是从0开始的!!!

    重要的事情说三遍!

    13, 24, 54, 17, 45, 12, 33, 68, 46, 53, 91, 67, 44--------------------原始数据

    13, 24, 17, 45, 12, 33, 54, 46, 53, 68, 67, 44, 91
    13, 17, 24, 12, 33, 45, 46, 53, 54, 67, 44, 68, 91
    13, 17, 12, 24, 33, 45, 46, 53, 54, 44, 67, 68, 91
    13, 12, 17, 24, 33, 45, 46, 53, 44, 54, 67, 68, 91
    12, 13, 17, 24, 33, 45, 46, 44, 53, 54, 67, 68, 91
    12, 13, 17, 24, 33, 45, 44, 46, 53, 54, 67, 68, 91
    12, 13, 17, 24, 33, 44, 45, 46, 53, 54, 67, 68, 91

    看完了课堂上的例子,自己也写了一个数组,练习一下,发现了这样一个问题,所套用的两个for循环中外层的那个循环次数与数组的长度并没有关系,上面的数组长度是13,但是循环了7次就完成了排序,但是程序是循环了12次,后面有5次是空循环,课堂上的例子数组长度为8,循环了6次完成了排序,只是要配合控制内层的循环,所以后面的空循环是必要的,可见外层循环的次数其实跟原始数据的排列是有关系的。

    不知道这样理解对还是不对,希望老师同学给指导一下。

    有图有真相

    int[] we = new int[]{13, 24, 54, 17, 45, 12, 33, 68, 46, 53, 91, 67, 44};
            for(int q : we)
            {
                System.out.print(q + " ");
            }
            
    for(int b = 1; b < we.length; b++)
        {
            for(int a = 0; a < we.length - b; a++)
            {
                if(we[a] > we[a + 1])
                {
                    int n = we[a + 1];
                    we[a + 1] = we[a];
                    we[a] = n;
                }
            }
        }
            System.out.println();
            
            for(int q : we)
            {
                System.out.print(q + " ");
            }
  • 相关阅读:
    php测试题整理(0519)
    Ajax调用返回json,xml数据类型(0517--pm)
    python 收集测试日志--格式
    python3下tomorow模块报语法错误def async(n, base_type, timeout=None): ^ SyntaxError: invalid syntax
    appium 下载
    VMware 虚拟机设置固定ip
    Centos7 安装配置 SVN
    【Linux】 Centos7 安装 mysql-8.0
    win7 SP1 64位 原版 百度网盘下载
    win10操作系统 64位 原版 百度网盘下载
  • 原文地址:https://www.cnblogs.com/wgbs25673578/p/4865408.html
Copyright © 2011-2022 走看看