一.什么是栈和队列
栈:是一种后进先出的数据结构
也就是说最新添加的项最早被移出;LIFO(后进先出)
队列:数据结构访问规则是FIFO(先进先出)
队列在列表的末端添加项,从列表的前端移出项
二.push、pop、unshift、shift方法
数组:集成栈跟队列的两种规则
var arr = [1,2,3,4,5,6]
栈的形式访问:(结尾出入栈)
console.log(arr.push(7))
console.log(arr)
console.log(arr.pop)
console.log(arr)
队列的形式访问:(开头出入栈)
console.log(arr.unshift(7))
console.log(arr)
console.log(arr.shift())
console.log(arr)
三.sort如何排序
var arr = [1,3,4,6,5,2]
console.log(arr.sort())
var arr = [3,25,15,18,9,22]
console.log(arr.sort())
sort的排序规则:
1.默认升序
2.将排序的元素转为字符串['3','25'...]
3.找对应字符串的Unicode码表
只定义了[0-9],先从第一位开始排。再排第二位
解决:定义一个比较器函数
sort(function(x,y){
return x-y
})