leedcode—栈,队列
争取每日三题
把怪物藏起来
一个努力成为光的人
展开
-
剑指 Offer 06. 从尾到头打印链表
输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。 示例 1:输入:head = [1,3,2]输出:[2,3,1] 限制:0 <= 链表长度 <= 10000来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/cong-wei-dao-tou-da-yin-lian-biao-lcof著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。代码一:/** * Definiti原创 2021-11-26 18:53:32 · 103 阅读 · 0 评论 -
剑指 Offer 31. 栈的压入、弹出序列
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如,序列 {1,2,3,4,5} 是某栈的压栈序列,序列 {4,5,3,2,1} 是该压栈序列对应的一个弹出序列,但 {4,3,5,1,2} 就不可能是该压栈序列的弹出序列。示例 1:输入:pushed = [1,2,3,4,5], popped = [4,5,3,2,1]输出:true解释:我们可以按以下顺序执行:push(1), push(2), push(3), pus原创 2021-11-23 17:32:31 · 88 阅读 · 0 评论 -
剑指 Offer 30. 包含min函数的栈
定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min、push 及 pop 的时间复杂度都是 O(1)。示例:MinStack minStack = new MinStack();minStack.push(-2);minStack.push(0);minStack.push(-3);minStack.min(); --> 返回 -3.minStack.pop();minStack.top(); --> 返回 0.mi原创 2021-11-23 16:21:35 · 199 阅读 · 0 评论 -
剑指 Offer 09. 用两个栈实现队列
var CQueue = function() { this.items=[];};/** * @param {number} value * @return {void} */CQueue.prototype.appendTail = function(value) { this.items.push(value);};/** * @return {number} */CQueue.prototype.deleteHead = function() { .原创 2021-11-23 15:57:04 · 111 阅读 · 0 评论