力扣:225 用队列实现栈

栈、队列

栈: 弹夹,后进先出

队列: 排队,先进先出

描述:

js 复制代码
	
var MyStack = function () {
    // 定义两个数组,模拟队列
    this.queue = []
    this._queue = []
};

/** 
 * @param {number} x
 * @return {void}
 */
MyStack.prototype.push = function (x) {
    // 后插
    this.queue.push(x)
};

/**
 * @return {number}
 */
MyStack.prototype.pop = function () {
    // 返回栈顶元素,后进先出
    let ans
     while(this.queue.length > 1) {
        this._queue.push(this.queue.shift())
    }
    ans = this.queue.shift()
    while(this._queue.length){
        this.queue.push(this._queue.shift())
    }
    return ans
};

/**
 * @return {number}
 */
MyStack.prototype.top = function () {
    // 返回栈顶元素,
    return this.queue.slice(-1)[0]
};

/**
 * @return {boolean}
 */
MyStack.prototype.empty = function () {
    return !this.queue.length
};

用数组模拟栈、队列,没啥意思

相关推荐
天天喝旺仔2 分钟前
浏览器渲染原理:从解析 HTML/CSS、构建渲染树到重排重绘与首屏优化
前端·javascript·css·性能优化·html
aaajj4 分钟前
Android手机连接鼠标情况
android
其实防守也摸鱼25 分钟前
SQL注入实验笔记
android·运维·数据库·安全·oracle·自动化
_不会dp不改名_37 分钟前
leetcode_1614嵌套括号的最大深度
算法·leetcode·职场和发展
找茬小王子41 分钟前
Android原生Monkey工具的使用
android·monkey
Days20501 小时前
时间胶囊项目正式发布
javascript·gpt·php
Code Man1 小时前
实现 Android 字符设备驱动
android·驱动开发·lineageos
传奇开心果编程1 小时前
【Flutter入门练中学】第3课:滚动与列表
android·学习·flutter·ui·ios
JosieBook1 小时前
【数据库】MySQL 实战精通系列 · 第4篇:索引原理与执行计划实战
android·数据库·mysql
朱 欢 庆1 小时前
el-table-v2 虚拟表格组件
前端·javascript·vue.js