Unity - A计划(永久有效期) 扫二维码继续学习 二维码时效为半小时

(197评价)
价格: 4431.00元
为什么冒泡排序要使用双重循环
shuaibi发起了话题2017-08-03
1
回复
717
浏览

            for (int j = 1; j <= str.Length - 1; j++)
            {
                //length - 1
                for (int i = 0; i < numArray.Length - 1 - j + 1; i++)
                {
                    if (numArray[i + 1] < numArray[i])
                    {
                        int temp = numArray[i];
                        numArray[i] = numArray[i + 1];
                        numArray[i + 1] = temp;
                    }
                }   
            }

一个循环不就能控制执行次数了吗?

为什么要用外层循环来控制内层循环的执行次数。

上面的代码不是很懂

 

所有回复
  • siki 2017-08-03

    冒泡排序值比较值大小来排序的

    一次循环只能得到一个最大值,放在末尾,但是其他的位置还是无序的,所以只能通过多次执行循环(一个循环里面执行很多次) 所以就是双层循环 来排序

    还有-5条回复,点击查看
    你还没有登录,请先登录注册
发表回复
你还没有登录,请先 登录或 注册!