JS快速排序--记录点滴
2017-06-16 10:11
232 查看
<script type="text/javascript"> //快速排序:先找到一个基准点,也就是中间值,以基准点为例依次进行比较,比它小的放左边,大的放右边 // 左右分别用一个空数组存储比较后的数据, 最后用递归执行上述操作,直到数组长度<=1 var arrs=[1,23,54,111,33,4,65,2,13]; function fun(arrs){ if(arrs.length<=1){ return arrs; } //先找一个基准点 var jizhun=Math.floor(arrs.length/2); var leftArr=[]; //声明一个空数组,存放小的数 var rightArr=[]; // 存放大的数 // 然后获取到基准点的值,以方便后面进行比较,splice(index,1)可以返回数组中被删除的那个值 var zhongjianVal=arrs.splice(jizhun,1); //遍历数组,然后进行比较判断 for(i=0;i<arrs.length;i++){ if(arrs[i]<zhongjianVal){ leftArr.push(arrs[i]); }else{ rightArr.push(arrs[i]); } } return fun(leftArr).concat(zhongjianVal,fun(rightArr)); } alert("快速排序:"+fun(arrs)); </script>
相关文章推荐
- 学习Discuz! X3.2记录:快速回复插件,通过js使选择的下拉列表填充到回帖内容中
- js对象数组按属性快速排序
- JS数组排序技巧汇总(冒泡、sort、快速、希尔等排序)
- 记录学习的点滴(Js 数组)
- 快速排序用js、java和C的写法
- JS——笔试点滴记录2——字符串相关
- JS实现快速排序
- js 快速排序
- js写快速排序
- 冒泡排序,快速排序,插入排序(JS版)
- 快速排序记录
- JS实现快速排序
- js算法:分治法-快速排序
- js 快速排序
- js对象数组按属性快速排序
- 【记录】JavaScript版 快速排序,还请高手指教。
- 点滴积累【JS】---JS小功能(JS实现排序)
- 分享两遍不错的文章,有关快速排序,用JS写的,有需要的朋友可以参考一下
- js 快速排序
- 数据结构与算法学习记录:快速排序