JS创建栈和队列

JS创建栈

//使用JS创建一个栈
function Stack() {
  let items = []

  //添加一个或者几个新元素到栈顶
  this.push = function(element) {
    items.push(element)
  }


  //移除栈顶的元素,同时返回被移除的元素
  this.pop = function() {
    return items.pop()
  }


  //返回栈顶元素,但是并不对栈顶的元素做出任何的修改
  this.peek = function() {
    return items[items.length - 1]
  }


  //检查栈内是否有元素,如果有就返回true,没有就返回false
  this.isEmpty = function() {
    return items.length == 0
  }


  //清除栈里的元素
  this.clear = function() {
    items = []
  }


  //返回栈里的个数
  this.size = function() {
    return items.length
  }


  //打印栈里的元素
  this.print = function() {
    console.log(items.toString());
  }

}



//使用栈
let stack = new Stack()
console.log(stack.isEmpty());

JS创建队列

function Queue() {
  let items = []

  //向队列尾部添加一个(或是多个元素)
  this.enqueue = function(element) {
    items.push(element)
  }


  //移除队列的第一个元素,并返回被移除的元素
  this.dequeue = function() {
    return items.shift()
  }

  //返回队列的第一个元素
  this.front = function() {
    return items[0]
  }


  //检查队列内是否有元素,如果有返回true,没有返回false
  this.isEmpty = function() {
    return items.length == 0
  }


  //清除队列所有元素
  this.clear = function() {
    items = []
  }


  //返回队列的长度
  this.size = function() {
    return items.length
  }


  //打印队列的元素
  this.print = function() {
    console.log(items.toString());
  }

}


//使用队列
let queue = new Queue()
console.log(queue.size());
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值