zoukankan      html  css  js  c++  java
  • C# 冒泡排序

    冒泡排序

    int temp = 0;
    int[] arr = { 23, 44, 66, 76, 98, 11, 3, 9, 7 };
    //循环这个数组,数组长度是9-1=8
    for (int i = 0; i < arr.Length - 1; i++)
    {
        //循环还这个数组,数组长度是9-1-i
        for (int j = 0; j < arr.Length - 1 - i; j++)
        {
            //比较数组中,前后2个数的大小,
            //如果前面的数,大于后面的数,则进入判断
            if (arr[j] > arr[j + 1])
            {
                //同时将后面的数,赋值给temp
                temp = arr[j + 1];
                //用前面的数赋值给后面的数。
                arr[j + 1] = arr[j];
                //将之前赋值的temp赋值给前面的数字
                arr[j] = temp;
            }
        }
    }

    主要是把大的数字放在后面去,小的数字放在前面。

    第一次进入if判断之后

    数组变成{ 23, 44, 66, 76, 11, 98, 3, 9, 7 }

    For里面的第一次循环结束之后

    数组变成{ 23, 44, 66, 76, 11, 3, 9, 7, 98}

    这样无限循环就可以把最大的数字,放到最后。

    for (int j = 0; j < arr.Length - 1 - i; j++)

    这里有个arr.Length - 1 - i  减i的用意是将已经排好的最后一位,不再进行排序,这样就可以每次都将最大的数字排放到最后面。

  • 相关阅读:
    vue 开发环境搭建
    签名算法
    MySQL explain执行计划优化
    查看运行时某个java对象占用JVM大小及通过idea查看java的内存占用情况
    jenkins 配置
    CSS布局
    《JavaScript 代码优化指南》
    JavaScript 跨域漫游
    iFrame 功能详解
    粘性的底部布局
  • 原文地址:https://www.cnblogs.com/cang12138/p/5938659.html
Copyright © 2011-2022 走看看