• JS算法之快排&冒泡


    1.快速排序思想:

      1.1 先找数组的最中间的一个数为基准

      1.2 把数组通过此基准分为小于基准的left数组和大于基准的right数组,

      1.3 递归重复上面的两个步骤,

    代码如下:

    function quickSort(arr) {
        if (arr.length <=1 ){
            return arr;
        }
        var middleIndex = Math.floor(arr.length / 2);
        var left = [];
        var right = [];
        var middle = arr.splice(middleIndex,1)[0];
        for (var i = 0; i < arr.length; i++) {
            if ( arr[i] > middle) {
                right.push(arr[i]);
            } else {
                left.push(arr[i]);
            }
        }
        return quickSort(left).concat(middle,quickSort(right));
    }

    2. 冒泡排序思想:

      2.1 两两比较,交换位置

      2.2 循环数组

    代码如下:

    function bubbleSort(arr) {
        for (var i = 0; i < arr.length - 1; i++) {
            for (var j = 0; j < arr.length -1 -i; j++) {
                if( arr[j] > arr[j+1]){
                    var temp = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = temp;
                }
            }
        }
        return arr;
    }
    用IE6的以后吃方便面都没有调料包!!!
  • 相关阅读:
    File类
    Java运算符
    JAVA语法
    数据库-子查询
    爬取笔趣阁_完本书籍
    爬取动物图片源码
    爬取电影天堂上最新电影的下载链接的源码
    pyinstaller的安装、使用、出错解决办法
    Emmet插件使用方法总结
    Markdown基本语法
  • 原文地址:https://www.cnblogs.com/H5C3XXN/p/6268851.html
Copyright © 2020-2023  润新知