// 03、封装冒泡排序算法 sortMe() 。

 <script>
        // 03、封装冒泡排序算法 sortMe() 。
        // arr为数组,des输入是升序(up)还是降序(low),默认升序
        function sortMe(arr, des = 'up') {
            // 控制比较次数,最后剩一个就不要比较了
            for (let i = 0; i < arr.length; i++) {
                // 控制每轮比较的次数,比较完的没必要比较了所以-i,也是最后剩一个没有必要比较了所以可以-1
                for (let j = 0; j < arr.length - i - 1; j++) {
                    if (des == 'up') {
                        // 两两比较
                        if (arr[j] > arr[j + 1]) {
                            let temp = arr[j];
                            arr[j] = arr[j + 1];
                            arr[j + 1] = temp;
                        }
                    } else {
                        // 降序
                        if (arr[j] < arr[j + 1]) {
                            let temp = arr[j];
                            arr[j] = arr[j + 1];
                            arr[j + 1] = temp;
                        }
                    }
                }
            }
            return arr;
        }

        console.log(sortMe([1,2,34,5,54,654,699,4,4,56,3]));
        console.log(sortMe([1,2,34,5,54,654,699,4,4,56,3],'low'));
    </script>
posted @ 2021-10-24 17:42  小叻色  阅读(51)  评论(0)    收藏  举报