当前位置: 首页 > news >正文

最小栈、栈的弹出(C++)

1.最小栈

思路分析:

 

 代码:

class MinStack {
public:MinStack() {}void push(int val) {st.push(val);//两种情况需要更新最小值//1.最小栈为空(就是存最小值的那个栈)//2.插入的值小于或等于最小栈的栈顶元素if(minstack.empty()||minstack.top()>=val){minstack.push(val);}}void pop() {int front=st.top();st.pop();if(front==minstack.top())minstack.pop();}int top() {return st.top();}int getMin() {return minstack.top();}//定义两个栈stack<int> st;stack<int> minstack;
};

2.栈的压入、弹出序列

思路分析:

 

 

 

 

 代码:

class Solution {
public:bool IsPopOrder(vector<int>& pushV, vector<int>& popV) {//表示当前弹出顺序所在位置的下标int cur=0;stack<int> st;for(auto e: pushV){st.push(e);while(!st.empty()&&st.top()==popV[cur]){cur++;st.pop();}}return st.empty();}
};

http://www.lryc.cn/news/368642.html

相关文章:

  • 20240607每日通信--------VUE3前端引入scoket-io,后端引入Netty-SocketIO,我成功了,希望一起交流沟通
  • Tomcat源码解析(八):一个请求的执行流程(附Tomcat整体总结)
  • python使用gdb进行堆栈查看与调试
  • 【DevOps】路由与路由器详细介绍:原理、功能、类型及应用场景
  • 【WP|9】深入解析WordPress [add_shortcode]函数
  • Qt QStackedWidget类详细分析
  • Java数据结构与算法(leetcode热题881. 救生艇)
  • react+wijmo所遇问题
  • 手撕设计模式——克隆对象之原型模式
  • LangChain基础知识入门
  • Objective-C的初始化方法中,应该如何读写属性
  • 基于Python+Flask框架实现的新冠疫情可视化的设计与实现
  • 大学生如何学习C语言编程?
  • python小tips
  • 分布式版本控制工具软件——Git概述
  • 【一百零八】【算法分析与设计】P1908 逆序对,P1637 三元上升子序列,树状数组区间和应用
  • 【RK3568】制作Android11开机动画
  • chrony内网同步服务器时间
  • SSM物流管理系统的设计与实现-计算机毕业设计源码44323
  • STM32CubeIDE使用过程记录
  • angular2开发知识点
  • 【机器学习】机器学习与智能交通在智慧城市中的融合应用与性能优化新探索
  • 走的人多了,也便成了路(七)
  • UE5中在地形中加入湖、河
  • 【280个shell脚本】----提示运维工作效率
  • 从零开始搭建Electron项目之运行例程
  • MySQL逻辑备份
  • python 获取网页链接图片
  • Leetcode 力扣114. 二叉树展开为链表 (抖音号:708231408)
  • 文刻ai工具跟绘唐AI工具有什么区别