数组排序的几种方法
来源:互联网 发布:mac groovy sdk 编辑:程序博客网 时间:2024/05/17 11:06
1、sort()
sort()主要是对数组中的字符串进行排序,通过比较ASCII的大小,对于数字的比较使用格式
数组名.sort(function(num1,num2){return num1-num2;})
这是升序,如果降序将num1 -num2改成num2 -num1;2、选择排序法
原理就是用前一个数和后面每一个的比较,如果大于就交换位置(假设是从小到大排序),依次比较,
// 选择排序法 用前一个数和后一个比较,如果是升序,大的值放后面,如果是降序,小的放后面/*var arr= [21,34,2,45,4,60,3];for (var i=0; i<arr.length; i++){for (var j=i+1; j<arr.length; j++){if(arr[i]>arr[j]){var temp = arr[i];arr[i] = arr[j];arr[j] = temp;}}}console.log(arr);*/
原理就是相邻的元素之间进行比较
依次比较相邻的两个数,将小数放在前面,大数放在后面。即首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。重复以上过程,仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再小于第2个数),将小数放前,大数放后,一直比较到最大数前的一对相邻数,将小数放前,大数放后,第二趟结束,在倒数第二个数中得到一个新的最大数。如此下去,直至最终完成排序。
// 冒泡排序方法,挨个去比较var arr = [12,4,34,5,23,33];function maoPao(arr){//比较的轮数for (var i=1; i<arr.length; i++){// 每一轮比较的次数for (var j=1, k=0; j<=arr.length-i; j++, k++){// 进行比较if(arr[k]>arr[k+1]){var temp = arr[k];arr[k] = arr[k+1];arr[k+1] = temp;}}}}maoPao(arr);console.log(arr);
阅读全文
0 0
- 数组的几种排序方法
- 数组排序的几种方法
- 数组排序的几种方法
- 数组的几种排序方法
- JAVA 中数组的几种排序方法 标准的!
- ios的几种简单有效的数组排序方法
- ios的几种简单有效的数组排序方法
- ios的几种简单有效的数组排序方法
- JAVA 中数组的几种排序方法
- java 运用数组常用的几种排序方法
- IOS几种简单有效的数组排序方法
- IOS几种简单有效的数组排序方法
- IOS几种简单有效的数组排序方法
- ios几种简单有效的数组排序方法
- IOS几种简单有效的数组排序方法
- IOS几种简单有效的数组排序方法
- IOS几种简单有效的数组排序方法
- IOS几种简单有效的数组排序方法
- Echarts散点图
- C#与C/C++的交互
- CC2640R2F BLE5.0 蓝牙协议栈通用访问配置文件(GAP)
- Ubuntu下制作deb包的方法详解
- 总结H5前端优化
- 数组排序的几种方法
- python
- 2.1.21—线性表—Gas Station
- Unity,UI实现滚动内容
- Java 9的前9大改进和功能,程序员不妨先了解
- 使用kibana来进行ElasticSearch的信息查询检索
- spring 生命周期最详解
- DOM中的动态NodeList与静态NodeList(getElementsByTagName()与querySelectorAll())
- C++学习笔记之类