
栈
heda3
拥有超过10年的嵌入式开发经验,新一代信息技术工程师/人工智能博士,已申请发明专利15项,其中8项成功获批授权,并在中英文期刊上发表多篇高水平学术论文。在嵌入式系统、算法开发与技术管理领域,积累了丰富的实践经验,并持续在技术社区分享在嵌入式驱动、操作系统、上位机软件、算法优化等开发过程中遇到的关键问题、创新解决方案以及深刻的技术洞察。持续跟随行业前沿,探索嵌入式开发中的最新动态与突破性技术,共同推动技术进步与创新!
展开
-
27.用两个栈实现队列
题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 解法: 思路: 1)一个栈负责压栈 2)压入栈1的数出栈到栈2中 3)栈2负责出栈 class Solution { public: void push(int node) { stack1.push(node); } int pop...原创 2019-02-07 10:21:35 · 136 阅读 · 0 评论 -
29、栈的压入、弹出序列
题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的) 解题思路: 入栈的顺序如第一个序列。 栈的弹出顺序有多种。 让弹出栈的元素和...原创 2019-02-07 16:49:48 · 162 阅读 · 0 评论 -
28.包含min函数的栈
题目描述 定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。 分析问题: 1、新建一个暂存变量存储最小值,但是当把栈中的最小的元素出栈后,剩下的栈中的最小元素将不知道 2、除了最小元素保存,还要保存次小的元素,以此类推,每一次比较的最小结果都要保存。 为此: 1)新建一个辅助栈保存每次进栈的最小元素 2)出栈时,同时把辅助栈顶返回即...原创 2019-02-07 12:58:22 · 135 阅读 · 0 评论 -
数据结构之栈
栈:只允许在表尾进行插入和删除的线性表 后进先出(Last In First Out)LIFO结构 (注意:线性表的存储方式分为顺序存储和链式存储) 操作方式: 1)进栈 栈的压入,也称压栈、入栈 push 2)出栈 栈的删除 pop 其中进栈出栈有多种变化方式:例如可以同时入栈123再出栈,也可以单个入再单个出例如入1出1再继续 栈的存储方式: 顺序存储 缺点:...原创 2019-02-06 20:10:45 · 211 阅读 · 0 评论