二分法排序
先找到一个标杆(我们将这个标杆设置为数组第0项)
var pivot = array[0]; //标杆
分别将比标杆大的数和比标杆小的数放到一边。
if(array[i] > pivot)
{
max.push(array[i]);
}
else
{
//归为小的一类
min.push(array[i]);
}
综合起来写:
<script>
/*快速排序法*/
function quickSort(array)
{
if(array.length <= 1)
{
return array;
}
var pivot = array[0]; //标杆
var max = []; //存放大的一类
var min = []; //存放小的一类
for(var i = 1; i < array.length; i++)
{
//如果一个值大于标杆的值,将它归为大的一类
if(array[i] > pivot)
{
max.push(array[i]);
}
else
{
//归为小的一类
min.push(array[i]);
}
}
return quickSort(min).concat(pivot, quickSort(max));
}
var array = [45, 18, 89, 10, 6, 58, 99, 42, 25];
console.log(quickSort(array));
</script>
文章最后发布于: 2018-08-10 18:01:17
相关阅读
去年以来,Google搜索面临一类以前比较少见的问题,虚假新闻内容是源头,进而带来一系列相关问题,如:编造的假新闻带有极度偏见、煽动仇恨
Oraclet 没有像sql server所支持的top语法,不过可通过rownum控制。rownum没有所谓的小于,只有大于。 –查询前10条数据 select * fr
-bash: ls: No such file or directory 错误的原因及
ubuntu出现如下错误: { Welcome to Ubuntu 16.04.5 LTS (GNU/Linux 4.15.0-42-generic x86_64) * Documentation: https://help.
strncpy 是 C语言的库函数之一,来自 C语言标准库,定义于 string.h,char *strncpy(char *dest, const char *src, int n),把src所指
Excel中如何做到按递增顺序就行排序呢?接下来是seo实验室小编为大家带来的excel表格数据按递增排序的方法,供大家参考。excel表格