【practise】栈的压入和弹出序列

news/2024/9/22 16:34:31/

关于我:在这里插入图片描述


睡觉待开机:个人主页

个人专栏: 《优选算法》《C语言》《CPP
生活的理想,就是为了理想的生活!
作者留言

PDF版免费提供倘若有需要,想拿我写的博客进行学习和交流,可以私信我将免费提供PDF版。
留下你的建议倘若你发现本文中的内容和配图有任何错误或改进建议,请直接评论或者私信。
倡导提问与交流关于本文任何不明之处,请及时评论和私信,看到即回复。


参考目录

  • 1.前言
  • 2.题目简介
  • 3.题解思路
  • 4.参考代码


1.前言

我们知道对于同一入的队列,在出时候也会因为出的时机不同从而造成不同的出顺序,那该如何判断一串出队列属于该入队列的某一出顺序呢???
下面我们来介绍题目——的压入和弹出序列。
在这里插入图片描述
所以说,对于同一入序列,不同的出时间也会影响出结果。

2.题目简介

题目链接:LINK
在这里插入图片描述
题意很简单,给我们一组入和出序列,检验是否匹配。

3.题解思路

思路很简单,我们模拟入次序,看是否匹配。

  • 先把入序列入
  • 顶元素和出序列是否匹配
    • 匹配,持续出数据,直到不匹配或者为空
    • 不匹配,继续第一步…

当入序列走完了,我们就可以判断结果了。

  • 如果不为空,则不匹配。
  • 如果为空,则匹配。

在这里插入图片描述

4.参考代码

class Solution {
public:/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * @param pushV int整型vector * @param popV int整型vector * @return bool布尔型*/bool IsPopOrder(vector<int>& pushV, vector<int>& popV) {// write code hereint pushi = 0;int popi = 0;stack<int> st;while(pushi != pushV.size()){//数据入st.push(pushV[pushi]);//判断是否匹配,出(必须非空才可以top)while(!st.empty() && st.top() == popV[popi]){//匹配,我们就出,popi++st.pop();popi++;}pushi++;}//如果st为空,则证明匹配,如果不为空,则证明不匹配。return st.empty();}
};


好的,如果本篇文章对你有帮助,不妨点个赞~谢谢。
在这里插入图片描述


http://www.ppmy.cn/news/1509170.html

相关文章

WookTeam searchinfo SQL注入漏洞复现

0x01 产品简介 WookTeam是一款轻量级的在线团队协作工具,提供各类文档工具、在线思维导图、在线流程图、项目管理、任务分发,知识库管理等工具。 0x02 漏洞概述 WookTeam /api/users/searchinfo 接口存在SQL注入漏洞,未经身份验证的恶意攻击者利用 SQL 注入漏洞获取数据库…

【Js】fetch网络请求

一、网络请求方式&#xff1a; AJAX&#xff1a;基于XMLHttpRequest收发请求&#xff0c;使用较为繁琐&#xff0c;代码量会比较多axios&#xff1a;基于promise的请求客户端&#xff0c;在浏览器和node中均可使用&#xff0c;使用便捷&#xff0c;功能强大fetch&#xff1a;内…

【leetcode】特殊数组I【(炒鸡)简单】

好像这题没啥子好说的欸&#xff0c;那就祝点进来的友友今天有好事发生叭~ AC代码见下&#xff1a; class Solution { public:bool isArraySpecial(vector<int>& nums) {for(int i1; i<nums.size(); i)if(nums[i]%2 nums[i-1]%2) return false;return true;} }…

k8s分布式存储-ceph

文章目录 Cephdeploy-ceph部署1.系统环境初始化1.1 修改主机名&#xff0c;DNS解析1.2 时间同步1.3 配置apt基础源与ceph源1.4关闭selinux与防火墙1.5 **创建** ceph **集群部署用户** cephadmin1.6分发密钥 2. ceph部署2.1 **安装** ceph 部署工具2.2 **初始化** mon **节点**…

设计模式(1)创建型模式和结构型模式

1、目标 本文的主要目标是学习创建型模式和结构型模式&#xff0c;并分别代码实现每种设计模式 2、创建型模式 2.1 单例模式&#xff08;singleton&#xff09; 单例模式是创建一个对象保证只有这个类的唯一实例&#xff0c;单例模式分为饿汉式和懒汉式&#xff0c;饿汉式是…

详解LVS-dr模式

什么是LVS-dr模式 图解 在LVS-DR模式下&#xff0c;负载均衡器&#xff08;也称为调度器&#xff09;接收来自客户端的请求&#xff0c;并根据预设的调度算法将请求转发给后端的真实服务器&#xff08;也称为RS&#xff09;。真实服务器处理完请求后&#xff0c;直接将响应返回…

mysql-增添轮播图

使用工具Navicat连接mysql: 首先 然后 需要注意的是需要上面两个步骤执行之后,再点击连接测试才可以成功,其他单独连接测试都不成功,然后点击确定即可!!!!! MySQL修改: 首先,进入mysql mysql -u root -p 密码忘记参考教程:Linux错误 ERROR 1045 (28000): Acce…

网络安全自学入门:(超详细)从入门到精通学习路线规划,学完即可就业

在当今高度数字化的时代&#xff0c;网络安全已经成为了一个至关重要的领域。随着网络威胁的不断演变和增长&#xff0c;对于专业网络安全人才的需求也在急剧上升。对于那些对网络安全充满热情并且渴望自学成才的人来说&#xff0c;制定一个系统、全面且高效的学习路线和规划是…