zoukankan      html  css  js  c++  java
  • cocos2d JS-(JavaScript) 冒泡排序

    思想:

    比较相邻的元素。如果第一个比第二个大,就交换他们两个。

    对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。

    针对所有的元素重复以上的步骤,除了最后一个。

    持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。

    效率:

    时间复杂度:平均 O(n)

    空间复杂度:需要辅助空间 O(1)

    稳定性:稳定

    js代码:

        function bubbleSort(arr) {
            var i = arr.length, j;
            var tempExchangVal;
            while (i > 0) {
                for (j = 0; j < i - 1; j++) {
                    if (arr[j] > arr[j + 1]) {
                        tempExchangVal = arr[j];
                        arr[j] = arr[j + 1];
                        arr[j + 1] = tempExchangVal;
                    }
                }
                i--;
            }
            return arr;
        }
        var arr = [3, 2, 4, 9, 1, 5, 7, 6, 8];
        console.log("before: "+arr);
        var arrSorted = bubbleSort(arr);
        console.log(" after: "+arrSorted);
  • 相关阅读:
    第三周java学习总结
    第一周Java学习总结
    关闭窗体
    乱七八糟
    网页游戏资料
    timer控件的使用
    spread 签套循环改变颜色编号为颜色
    限制输入‘号的代码
    SQlcharindex命令
    限制输入类型
  • 原文地址:https://www.cnblogs.com/luorende/p/8549646.html
Copyright © 2011-2022 走看看