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

LeetCode 946 验证栈序列[栈 模拟] HERODING的LeetCode之路

在这里插入图片描述
解题思路:
既然是验证栈的序列,不如直接定义一个栈进行模拟,模拟是否满足入栈出栈要求,由于值不重复,所以入栈出栈的顺序就唯一,只要找到这个顺序即可,首先不断入栈,当栈尾和popped的index位置相同,弹出,然后不断重复该操作,最后栈空返回true,代码如下:

class Solution {
public:
    bool validateStackSequences(vector<int>& pushed, vector<int>& popped) {
        stack<int> s;
        int n = pushed.size();
        s.push(pushed[0]);
        int index1 = 1, index2 = 0;
        while(!s.empty()) {
            while(!s.empty() && s.top() == popped[index2]) {
                s.pop();
                index2 ++;
            }
            if(index1 >= n || index2 >= n) {
                break;
            }
            s.push(pushed[index1 ++]);
        }
        return s.empty();
    }
};

相关文章:

  • 第十七天计算机视觉之光学字符识别基础理论
  • 混迹职场10多年的数据开发老鸟,居然被一个职场新人上了一课
  • PHP - AJAX 与 PHP
  • 微服务项目调用外部接口
  • 【Python】第八课 异常处理
  • Atomic Mail Sender 9.6.X 中文版Crack
  • 【重识云原生】第六章容器6.1.4节——Docker核心技术LXC
  • mysql—自增长和索引
  • 【C语言】带你深入剖析字符串相关知识(详细讲解+源码展示)
  • PostgreSQL 常用管理命令
  • Canny边缘检测数学原理及Python代码实现
  • 代码解析MixFormer: Mixing Features across Windows and Dimensions
  • 墨者-网络安全
  • Thread类的基本用法
  • Vue——方法与事件、 样式绑定、数据绑定、面试题、笔试题
  • 【5+】跨webview多页面 触发事件(二)
  • 【腾讯Bugly干货分享】从0到1打造直播 App
  • CSS 提示工具(Tooltip)
  • echarts花样作死的坑
  • JavaScript-Array类型
  • Js基础知识(一) - 变量
  • macOS 中 shell 创建文件夹及文件并 VS Code 打开
  • PHP 小技巧
  • Redis中的lru算法实现
  • Spring Cloud中负载均衡器概览
  • SpriteKit 技巧之添加背景图片
  • TypeScript实现数据结构(一)栈,队列,链表
  • 动手做个聊天室,前端工程师百无聊赖的人生
  • 基于 Ueditor 的现代化编辑器 Neditor 1.5.4 发布
  • 基于Volley网络库实现加载多种网络图片(包括GIF动态图片、圆形图片、普通图片)...
  • 前端性能优化--懒加载和预加载
  • 深度学习在携程攻略社区的应用
  • 手写双向链表LinkedList的几个常用功能
  • 微信小程序:实现悬浮返回和分享按钮
  • 正则表达式
  • Spring第一个helloWorld
  • 蚂蚁金服CTO程立:真正的技术革命才刚刚开始
  • ​3ds Max插件CG MAGIC图形板块为您提升线条效率!
  • ​比特币大跌的 2 个原因
  • ###STL(标准模板库)
  • (2)关于RabbitMq 的 Topic Exchange 主题交换机
  • (2015)JS ES6 必知的十个 特性
  • (二)windows配置JDK环境
  • (机器学习的矩阵)(向量、矩阵与多元线性回归)
  • (三维重建学习)已有位姿放入colmap和3D Gaussian Splatting训练
  • (十二)python网络爬虫(理论+实战)——实战:使用BeautfulSoup解析baidu热搜新闻数据
  • (一)Mocha源码阅读: 项目结构及命令行启动
  • (一)RocketMQ初步认识
  • ****** 二十三 ******、软设笔记【数据库】-数据操作-常用关系操作、关系运算
  • .net经典笔试题
  • .NET命令行(CLI)常用命令
  • .NET牛人应该知道些什么(2):中级.NET开发人员
  • .net用HTML开发怎么调试,如何使用ASP.NET MVC在调试中查看控制器生成的html?
  • .NET中 MVC 工厂模式浅析
  • /dev/VolGroup00/LogVol00:unexpected inconsistency;run fsck manually