Js中数组的排序方法

方法一:

sort排序

    var arr = [10, 2, 3, 4, 5, 6, 7, 8, 9, 1];
    arr.sort(function (a, b) {
        //a-b升序,b-a降序
        return a - b;
    });

    console.log(arr);

方法二:

冒泡排序

    var arr = [10, 2, 3, 4, 5, 6, 7, 8, 9, 1];
    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;

            }
        }
    }
    console.log(arr);

方法三:

选择排序

    var arr = [10, 2, 3, 4, 5, 6, 7, 8, 9, 1];

    for (var i = 0; i < arr.length - 1; i++) {
        //最大值变量索引值
        var maxindex = i;
        //假定一个最小值
        var min = arr[i];
        for (var j = i + 1; j < arr.length; j++) {
            //>升序,<降序
            if (min > arr[j]) {
                //替换最小值,给到循环的首位
                arr[i] = arr[j];
                maxindex = j;
            }
        }
        //循环一遍后,将最大值min给到循环的最后
        arr[maxindex] = min;
    }
    console.log(arr);

posted @ 2022-10-07 22:00  卟怪  阅读(77)  评论(0编辑  收藏  举报