博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
经典算法:快排的Javascript版本
阅读量:5021 次
发布时间:2019-06-12

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

1 function swap(arr,l,r){ 2     var temp=arr[l]; 3     arr[l]=arr[r]; 4     arr[r]=temp; 5 } 6 function partition(arr,camp,left,right){ 7     var index=left; 8     var p=arr[index]; 9     swap(arr,index,right);//交换key到最后一位10     for(var i=left;i
right) return;31 var index=partition(arr,camp,left,right);32 quicksort(arr,camp,left,index-1);33 quicksort(arr,camp,index + 1, right);34 }35 var arr = [5, 3, 9, 4, 1, 7, 8, 6, 2];36 quicksort(arr,function(a,b){
return a < b;});37 console.log(arr);

其实这并不是最佳版,最佳版本的比较基准应该是随机数生成的,其实很简单

p=arr[Math.floor(Math.random()*(right-left+1)+left)];//如此即可

转载于:https://www.cnblogs.com/wolm/p/3589477.html

你可能感兴趣的文章
S1的小成果:MyKTV系统
查看>>
从setting文件导包
查看>>
编写一个函数isMerge,判断一个字符串str是否可以由其他两个字符串part1和part2“组合”而成...
查看>>
union和union all
查看>>
Github 开源:使用控制器操作 WinForm/WPF 控件( Sheng.Winform.Controls.Controller)
查看>>
PMD使用提醒
查看>>
Codeforces 887D Ratings and Reality Shows
查看>>
论文《A Generative Entity-Mention Model for Linking Entities with Knowledge Base》
查看>>
CentOS 6.7编译安装PHP 5.6
查看>>
Linux记录-salt分析
查看>>
Android Studio默认快捷键
查看>>
发布开源库到JCenter所遇到的一些问题记录
查看>>
第七周作业
查看>>
函数式编程与参数
查看>>
flush caches
查看>>
SSAS使用MDX生成脱机的多维数据集CUB文件
查看>>
ACM_hdu1102最小生成树练习
查看>>
MyBatis源码分析(一)--SqlSessionFactory的生成
查看>>
android中ListView点击和里边按钮或ImageView点击不能同时生效问题解决
查看>>
CTF常用工具之汇总
查看>>