javascript 实现冒泡算法对数组进行排序

原理:(升序)

1. 从第一位开始循环比较相邻的两个值,如果左边的比右边的大就将两个值交换,一次循环之后最右边的值就是最大了

2. 反复重复第一步的操作,已经“冒泡”到元素右边的元素不用比较,直到排序完成。

代码:

   var examplearr=[8,94,15,88,55,76,21,39];

    function sortArr(orginArr) {
        var arr = orginArr.concat();

        var len = arr.length;
        for(var i = 0; i < len; ++i) {
            for(var j =0; j < len -1 - i;++j) {
                if(arr[j]>arr[j+1]) {
                    var temp = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = temp
                }
            }
        }
        return arr;
    }

    console.log(sortArr(examplearr)); // 输出 [8, 15, 21, 39, 55, 76, 88, 94]


排序算法列表

你可能感兴趣的:(JavaScript,web)