JS排序
来源:互联网 发布:淘宝类似威廉的男装店 编辑:程序博客网 时间:2024/06/18 17:36
众所周知,在数据结构中有10大排序,分别是:
1.冒泡排序
2.选择排序
3.插入排序
4.希尔排序
5.归并排序
6.快速排序
7.堆排序
8.计数排序
9.桶排序
10.计数排序
在这里我只介绍一下冒泡算法和快速排序的算法
冒泡排序
思想:
每次比较相邻的两个数,大的数一直向下沉,小的数一直上升。类似于冒泡。
function sort(arr) { for( var i=0;i<arr.length-1;i++) { for( var j=i+1;j<arr.length;j++){ if( arr[i] > arr[j]){ var temp; temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } } } return arr; } var arr = [3,55,66,4,22,1,21]; var result = sort(arr); console.log('冒泡的结果为:',result);
快速排序
思想:
1.选择基准项(一般都是中间项)
2.比基准项小的放在数组的左边,比基准项大的放在数组的右边
3.递归
function quickSort(arr) { var middleIndex = Math.floor( arr.length/2 ); var middle = arr.splice(middleIndex,1)[0]; var left = []; var right = []; for( var i=0;i<arr.length;i++) { if( arr[i] <= middle) { left.push(arr[i]); }else { left.right(arr[i]); } } return quickSort(left).concat([middle],quickSort(right));}var arr = [3,55,66,4,22,1,21];var result = quickSort(arr);console.log('排序的结果为:',result);
目前就介绍这两种,这两种也是面试官容易问的。
阅读全文
0 0
- JS排序
- js排序
- js排序
- JS排序
- js 排序
- JS----排序
- js 排序
- JS排序
- js 排序
- js排序
- js排序
- js 排序
- 排序js
- JS排序
- js排序
- js排序
- JS-排序
- js排序
- VS项目属性的一些配置项的总结(important)
- 什么叫同时处理两个ajax请求?
- 最坏时间复杂度
- do...while(0)的妙用
- 二叉搜索树的广度优先遍历
- JS排序
- java 中hashset 与hashmap的区别
- 动态逆序对
- 洛谷 P1008 三连击
- Deque C语言实现 && C++ STL基本操作
- jiecaovideoplayer的简单使用
- 51Nod 1347 旋转字符串
- java和Js中的类型转换
- centos-6 如何改系统语言成中文简体