zoukankan      html  css  js  c++  java
  • 排序算法总结

    一、冒泡排序

    /**
     * [冒泡算法]
     * @param {[type]} ary [description]
     * 把最大往上冒
     */
    function BubbleSortArray(ary){
    
        for (var i = 0, len = ary.length; i < len; i++) {
            for (var n = 0; n < len - i; n++) {
                    if (ary[n] > ary[n + 1]) {
                        var temp;
                        temp = ary[n];
                        ary[n] = ary[n + 1];
                        ary[n + 1] = temp;
                    }
            };
        };
        return ary;
    }
    View Code

    二、选择排序

    /**
     * [选择排序]
     * @param {[type]} ary [description]
     * 每次选择最小的
     */
    function SelectSortArray (ary) {
        var min_index;
        for (var i = 0, len = ary.length; i < len - 1; i++) {
            min_index = i;
            for (var n = i + 1; n < len; n++) {
                if (ary[n] < ary[min_index]) {
                    min_index = n;
                };            
            };
            if (min_index != i) {
                var temp;
                temp = ary[i];
                ary[i] = ary[min_index];
                ary[min_index] = temp;
            };
        };
    
        return ary;
    }
    View Code

    三、插入排序

    /**
     * [插入排序]
     * @param {[type]} ary [description]
     */
    function InsertSortArray(ary){
    
        for (var i = 1, len = ary.length; i < len; i++) {//因为第一个作为最初排序部分
            var temp = ary[i];
            var n = i - 1;
            while(n >= 0 && ary[n] > temp){
                ary[n + 1] = ary[n];
                n--;
            }
            ary[n + 1] = temp;
        };
        return ary;
    }
    View Code
  • 相关阅读:
    JavaScript学习笔记之数组(一)
    Ajax与CORS通信
    JSONP跨域
    JavaScript原型与原型链
    CSS布局套路
    爱奇艺的自制节目
    2019.3.6错误经验
    Kickdown UVA
    ASP.NET Web
    C# Windows
  • 原文地址:https://www.cnblogs.com/jianxie/p/3584537.html
Copyright © 2011-2022 走看看