美文网首页
冒泡排序

冒泡排序

作者: 弹力盒 | 来源:发表于2021-08-07 10:25 被阅读0次
    /***
     * 冒泡排序算法描述
     * 1、比较相邻的元素,如果前一个比后一个大,交换之。
     * 2、第一趟排序第1个和第2个一对,比较与交换,随后第2个和第3个一对比较交换,
     *    这样直到倒数第2个和最后1个,将最大的数移动到最后一位。
     * 3、第二趟将第二大的数移动至倒数第二位
     */
    const arr = [3, 2, 4, 5, 1]
    const len = arr.length
    for (let i = 0; i < len - 1; i++) {
      for (let j = 0; j < len - i - 1; j++) {
        /**
         * arr[j] > arr[j + 1] 为升序
         * arr[j] < arr[j + 1] 为降序
         */
        if (arr[j] > arr[j + 1]) {
          let t = arr[j]
          arr[j] = arr[j + 1]
          arr[j + 1] = t
        }
      }
    }
    

    参考如下动图


    77ad6f33ba0dc82446a74f109dd7c645.gif

    相关文章

      网友评论

          本文标题:冒泡排序

          本文链接:https://www.haomeiwen.com/subject/pzcypltx.html