栈和队列
关于栈和队列的leetcode题目
是馨呀!
这个作者很懒,什么都没留下…
展开
-
3.无重复字符的最长子串 JavaScript实现(滑动窗口)
js 滑动窗口 无重复字符的最长子串 leetcode原创 2022-03-23 16:04:50 · 165 阅读 · 0 评论 -
150. 逆波兰表达式求值 JavaScript实现
思想:判断是操作数还是运算符,可以自己写函数判断。原创 2022-11-06 15:56:41 · 262 阅读 · 0 评论 -
1047. 删除字符串中的所有相邻重复项 JavaScript实现
【代码】1047. 删除字符串中的所有相邻重复项 JavaScript实现。原创 2022-11-06 10:34:40 · 513 阅读 · 0 评论 -
225. 用队列实现栈 JavaScript实现
【代码】225. 用队列实现栈 JavaScript实现。原创 2022-11-03 16:03:43 · 268 阅读 · 0 评论 -
155. 最小栈 JavaScript实现
155. 最小栈题目链接一、思想用一个辅助栈去存储当前栈中的最小值,这样就可以在常数项时间里检索到栈中的最小元素。1、push操作,当插入元素的时候,辅助栈里的栈顶元素需要和这个元素进行比较,将最小的元素存入辅助栈中,这样辅助栈的栈顶元素永远都是最小的。2、pop操作,当弹出元素的时候,需要将辅助栈的栈顶元素一并弹出,这样辅助栈的栈顶元素一定是当前元素栈里的最小值。(避免弹出的元素就是当前的最小值)二、代码实现var MinStack = function() { this.x_st原创 2022-05-31 18:08:26 · 175 阅读 · 0 评论 -
232. 用栈实现队列 JavaScript实现
232. 用栈实现队列题目链接一、思想将一个栈当作输入栈,用于压入 push 传入的数据;另一个栈当作输出栈,用于pop和peek 操作。每次 pop 或peek时,若输出栈为空则将输入栈的全部数据依次弹出并压入输出栈,这样输出栈从栈顶往栈底的顺序就是队列从队首往队尾的顺序。二、代码实现// 面对对象编程var MyQueue = function() { // 定义两个栈,用数组实现栈的操作 this.inputStack = [], this.outputSta原创 2022-05-11 15:24:06 · 156 阅读 · 0 评论 -
20. 有效的括号 JavaScript实现
20. 有效的括号一、思路利用栈实现括号匹配的经典问题1、将左括号入栈。并且用一个哈希表存储左右括号:右括号为键,左括号为值。(这样设计,当遇到右括号的时候,就可以检查对应的哈希表里的左括号是否和栈顶元素匹配)2、遇到右括号将栈顶元素出栈,并且进行合法性检查。二、代码实现var isValid = function(s) { const n = s.length; // 长度为奇数,一定不合法 if (n % 2 != 0) { return false;原创 2022-04-25 15:41:58 · 679 阅读 · 0 评论