力扣: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
};

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

相关推荐
黄林晴1 分钟前
Composables CLI 发布!一站式创建与管理 Compose Multiplatform 项目
android
再让我睡两分钟7 分钟前
【无标题】
android·java·数据库·人工智能·prompt·ai应用开发
索西引擎3 小时前
【React】JSX:JavaScript 语法扩展的本质、编译机制与表达能力分析
前端·javascript·react.js
牧濑红莉11 小时前
网络安全竞赛pwn全解及第一道ai的wp
javascript·.net
kyriewen11 小时前
别再用AI debug了——这5种bug越修越烂
前端·javascript·ai编程
什巳12 小时前
JAVA练习278- 和为 K 的子数组
java·学习·算法·leetcode
louisgeek12 小时前
Android Studio 和 Git
android
顾昂_13 小时前
内存泄漏排查和 Chrome DevTools 使用教程
前端·javascript·面试
An_s14 小时前
rust开发wasm与浏览器(js)交互
javascript·rust·wasm
山河木马14 小时前
GPU自动处理专题4-填充覆盖区域(光栅化)
javascript·webgl·计算机图形学