美文网首页
js-快速排序

js-快速排序

作者: Top_Chenxi | 来源:发表于2016-10-12 15:24 被阅读104次
require(['jquery'], function($) {

    /**
     * @param  length 长度
     * @param  rangeFrom 数字范围的开始
     * @param  rangeTo 数字范围的结束
     * @return array
     */
    function getArray(length, rangeFrom, rangeTo) {
        var tmpArray = [];
        for (var i = 0; i < length; i++) {
            var tmp = Math.floor((Math.random() * (rangeTo - rangeFrom) + rangeFrom));
            tmpArray.push(tmp);
        }
        return tmpArray;
    }

    /**
     * @param  functionName 排序函数
     * @param  array 数组
     * @return string 函数运行时间
     */
    function calRunTime(functionName, array) {
        var start = new Date().getTime();
        functionName(array);
        var end = new Date().getTime();
        return (end - start) + "ms";
    }

    /**
     * 插入排序(简化版)
     * @param  array
     * @return array
     */
    function insertsort(array) {
        var len = array.length;
        for (var i = 1; i < len; i++) {
            if (array[i] < array[i - 1]) {
                var tmp = array[i];
                var j = i - 1;
                array[i] = array[j];
                while (j >= 0 && tmp < array[j]) {
                    array[j + 1] = array[j];
                    j--;
                }
                array[j + 1] = tmp;
            }
        }
        return array;
    }

   

    var myArray = getArray(10000, 1, 20);

    console.log(myArray);

    console.log(calRunTime(insertsort, myArray));

    console.log(myArray);

})

相关文章

  • js-快速排序

  • JS-排序详解-快速排序

    说明 时间复杂度指的是一个算法执行所耗费的时间 空间复杂度指运行完一个程序所需内存的大小 稳定指,如果a=b,a在...

  • js-排序

    一、快速排序定一个基准,把小于基准的放在左边,大于基准的放在右边。如此循环,直到有序。var quickSort ...

  • 七大排序算法之快速排序

    七大排序算法之快速排序 @(算法笔记)[排序算法, 快速排序, C++实现] [TOC] 快速排序的介绍: 快速排...

  • 面试准备--排序

    堆排序 快速排序(simple) 快速排序(regular) 归并排序 Shell排序 插入排序 选择排序 冒泡排序

  • 排序

    插入排序 选择排序 冒泡排序 归并排序 快速排序* 三路快速排序

  • 算法笔记01-排序#2

    快速排序敢叫快速排序,那它一定得快。 快速排序 概述 快速排序也是分治排序的典型,它快,而且是原地排序。不过,要防...

  • PHP 实现快速排序

    导语 这篇了解下快速排序。 快速排序 快速排序(英语:Quicksort),又称划分交换排序(partition-...

  • 快速排序的Python实现

    目录 快速排序的介绍 快速排序的Python实现 快速排序的介绍 快速排序(quick sort)的采用了分治的策...

  • 数据结构与算法 快速排序

    起因:快速排序,又称分区交换排序,简称快排,之前没有了解过,抽空学习一下。 快速排序 1 快速排序 快速排序的定义...

网友评论

      本文标题:js-快速排序

      本文链接:https://www.haomeiwen.com/subject/msyiyttx.html