码迷,mamicode.com
首页 > 编程语言 > 详细

结构-行为-样式-Js排序算法之 快速排序

时间:2016-12-19 14:32:13      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:style   算法   个数   turn   get   代码   app   document   吐槽   

 快速排序算法,是我的算法系列博客中的第二个Js实现的算法,主要思路:    在一个数组中随机取一个数(一般都取第一个或者最后一个),使这个数与数组中其他数进行比较,如果比它大就放到它的右边,比它小就放到这个数的左边,依次递归调用直到比较队列中只有两个数。

 

 代码实现:

var arrs = [23,85,61,37,55,12,63,11,99,39,70,21,23];
function QuickSort(arr , s,e){
    var len = e;
    var token = arr[s];
    for(var i=s+1;i<=len;i++){
        var ttt = arr[i];
        if(token >= arr[i]){
            var temp = arr[i];
            for(var k = i;k>s;k--){
                arr[k] = arr[k-1];
            }
            arr[s] = temp;
            s++;
        }
    }
    return s;
}

function sort(arrs,s,e){
    var t = QuickSort(arrs,s,e);
    if(t-1 >= s ){
        sort(arrs , s,t-1);
    }
    if(t+1 <= e){
        sort(arrs , t+1,e);
    }
}
    
sort(arrs,0,arrs.length);

document.getElementById("app").innerHTML = arrs+"";

 

注:代码可能还有可以优化的地方,欢迎吐槽!

 

结构-行为-样式-Js排序算法之 快速排序

标签:style   算法   个数   turn   get   代码   app   document   吐槽   

原文地址:http://www.cnblogs.com/BigUncleTang/p/6151106.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!