标签:arr 数据结构 console log js 数组 var 第五天 排序
数据结构
存储结构
线性结构
数组(顺序表) 队列 栈 堆 链表
非线性结构
树 图 hash表
数组
声明数组的方式
1,用[]声明数组
var arr = [ ]
2用new关键字声明
var arr = new Array( ) //括号内不写表示数组长度为0,写一位表示长度,写多位表示数组里的内容
数组遍历
-
传统for循环
-
for in遍历 //通过下标遍历
for (var index in arr){ //index表示下标
console.log(arr[index])
}
-
for of // 直接遍历数组里的内容
for(var value of arr){ //value表示的是里面值
console.log(value)
}
修改数组的方法
添加 (add push append..)
栈方法
push方法:添加到最后
var arr = [1]
arr.push(10)
console. log(arr.push(10)) //返回添加后的数组长度
console.log(arr) //[1,10]
队列方法
unshift 方法 :添加到第一个
删除 (delete(硬删) remove(软删)..)
栈方法
pop:删除最后面的
console.log(pop()) //返回被删除的内容
队列方法
shift:删除第一个
修改 (replace替换 update 更新)
反转 reverse(将最后一个变到第一个 一个个对应的换位置)
排序 sort
var arr3 = [15,20,11,4,5]
arr3.sort(function(a,b){
//1 和 -1来进行大小区分和排序规则
return b-a //a-b是正序 b-a就倒序
})
不影响原本数组的方法
concat (连接) // concat 连接 把多个数组变成一个数组 返回
slice (截取)
splice 方法 (删除) //splice会影响之前的数组 删除 截取 插入
排序算法
1.冒泡排序
2.选择排序(选择最大值的下标(或者最小值的下标)进行比较的排序)
3.快速排序
取一个数当作中间值,比中间值小的数放入左边的数组,大的放入右边数组,
再将左右两边的数组分别执行上诉的操作,无限二分为左右数组,直到左右数组的长度<=1
4.希尔排序 (插入排序的进阶)
5.插入排序 (插入数据的时候进行排序)
6.归并排序 (大数据排序的常用排序算法)
......
标签:arr,数据结构,console,log,js,数组,var,第五天,排序 来源: https://www.cnblogs.com/nihaoxiangbufuqi/p/16534383.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。