博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
结构-行为-样式-Js排序算法之 快速排序
阅读量:6402 次
发布时间:2019-06-23

本文共 830 字,大约阅读时间需要 2 分钟。

 快速排序算法,是我的算法系列博客中的第二个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+"";

 

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

 

转载于:https://www.cnblogs.com/ChickenTang/p/6151106.html

你可能感兴趣的文章
思考Android架构(二):像Android框架,如何(How-to)吸引开发者来使用它呢?
查看>>
在html中,怎么获取当前页面body的高度,body是没有设置高度的,但是里面有内容...
查看>>
把 Array 转换成 Map
查看>>
MyBatis入门学习
查看>>
ASA防火墙IPSEC
查看>>
djangostart01
查看>>
Ubuntu 12.04无法关机、重启解决办法
查看>>
Tomcat的四种基于HTTP协议的Connector性能比较
查看>>
【后缀数组】
查看>>
图片缩放裁剪
查看>>
jquery ajax 回调函数的值alert出来[object Object] 解决方法
查看>>
JQuery选择器总结
查看>>
MySQL安装详解(V5.5 For Windows)
查看>>
Android单例模式
查看>>
Installing SSL on CentOS | My Virtual Time Capsule
查看>>
Log4php 使用心得
查看>>
十三香_百度百科
查看>>
paip.网页右键复制菜单限制解除解决方案
查看>>
string.Format 格式化时间,货币
查看>>
Kerberos和NTLM - SQL Server
查看>>