js中数组的栈方法和队列方法

1.栈方法

ECMAScript数组提供了一种让数组的行为类似于其他数据结构的方法。具体来说,数组可以表现的就像栈一样(栈是一种可以限制插入和删除的数据结构)。
栈是一种LIFO(Last-In-First-Out,后进先出)的数据结构。栈中项的插入和移除只发生再一个位置,就是栈的顶部。ECMAScript为数组专门提供了push()和pop()方法,实现类似栈的行为。

push()向数组末尾添加项,返回修改后数组长度。pop()从数组末尾移除最后一项,减少数组长度,返回移除的项。


2.对列方法

队列数据结构的访问规则是FIFO(First-In-First-Out,先进先出)。队列在列表的末端添加项,从列表的前端移除项。由于push()是向数组末端添加项的方法,因此要模拟队列,只需一个从数组前端取得项的方法。实现这一操作的数组方法就是shift(),它能够移除数组中的第一个项并返回该项,同时将数组长度减1。结合使用shift()和push()方法,就可以像使用队列一样使用数组。

ECMAScript还为数组提供了一个unshift()方法,它能在数组前端添加任意个项,并返回新数组的长度。因此同时使用unshift()和pop()方法,可以从相反的方向来模拟队列。即在数组的前端添加项,从数组末端移除项。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值