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

算法讲解15:栈

栈:先进后出

公式:卡特兰数:n个不同的元素按照某个顺序入栈,对应的合法的出栈顺序有几个?公式如下:

C n

__2n______

n+1

题目:

给出两个序列pushed和poped两个序列,其取值从1到n(n ≤ 100000)。已知入栈序列是pushed,如果出栈序列有可能是poped,则输出Yes,否则输出No。为了防止骗分,每个测试点有多组数据,不超过5组。

输入格式

第一行一个整数q,询问次数。
接下来q个询问,对于每个询问:

- 第一行一个整数n表示序列长度;

- 第二行n个整数表示入栈序列;

- 第三行n个整数表示出栈序列;

输出格式

对于每个询问输出答案。

答案:

package 博客;

import java.util.*;

public class 栈 {
static int a[]=new int[10005];//入栈的数组
static int b[]=new int[10005];//出栈的数组
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int q = sc.nextInt();
while(q>0){
int n=sc.nextInt();
for(int i=1;i<=n;i++){
a[i]= sc.nextInt();
}
for(int i=1;i<=n;i++){
b[i]= sc.nextInt();
}
Stack<Integer> c = new Stack<>();

int j=1;
for(int l=1;l<=n;l++)
{
c.push(a[l]);
while(!c.isEmpty() && c.peek()==b[j]){
c.pop();
j++;
}
}
if(c.isEmpty()){
System.out.println("YES");
}
else{
System.out.println("NO");
}


q--;
}

}
}

队列:一般没有单独出题,例如bfs就需要队列辅助实现

定义栈

Stack<Integer> c =newStack<>();

c.push();//出栈

c.pop();//入栈

c.peek();//确认栈顶元素,不干别的

对于队列:

LinkedList<Integer> queue =newLinkedList<>();//初始化

queue.offer();//入队

queue.poll();//出队

queue.peek();//(查看队首)

http://www.jsqmd.com/news/139734/

相关文章:

  • 【弹簧阻尼器】基于卡尔曼滤波弹簧质量阻尼器系统噪声测量实时状态估计研究附Matlab代码0
  • C 语言字符串函数超全解析
  • 2025铜芯电缆厂家推荐排行榜:从产能到专利的权威实力比拼 - 爱采购寻源宝典
  • 【从高压输电线的架空地线中汲取电能】一个25千瓦受控电源从735千伏线路的架空地线中汲取电能的SimPowerSystems模型附Simulink仿真
  • 企业AI智能体官网:创新性、响应及时性与成本降低的综合考量
  • 2025聚氨酯保温管厂家推荐排行榜:产能规模与专利技术双维度对比 - 爱采购寻源宝典
  • AI搜索优化公司排行及推荐:南方网通脱颖而出
  • 分布式文件存储-FastDFS
  • 《基于PCA的人脸识别系统实现》
  • 成功验收丨威迈尔机器人多品牌混合调度系统赋能精密制造
  • Java毕设项目:基于协同过滤算法的动漫推荐系统(源码+文档,讲解、调试运行,定制等)
  • Windows系统文件vbscript.dll丢失损坏问题 下载修复
  • 2025阀门厂家推荐排行榜:从产能到专利的权威对比 - 爱采购寻源宝典
  • Acrobat Pro DC 2025的使用技巧
  • Windows系统文件usercpl.dll丢失损坏问题 下载修复
  • Java毕设项目:基于springboot的旅游网站系统的设计与实现(源码+文档,讲解、调试运行,定制等)
  • 免费SSL证书申请自动验证:DNS解析代理
  • 2026高职移动开发专业,高薪证书报考指南
  • Java计算机毕设之基于Springboot+Vue的旅游推荐系统设计与实现基于springboot的旅游网站系统的设计与实现(完整前后端代码+说明文档+LW,调试定制等)
  • 从化最优质楼盘:五大优质楼盘专业指南 - 品牌测评家
  • Windows系统文件UXInit.dll缺少损坏问题 下载修复
  • 2025年AI写论文必备神器:9款工具实测,1小时生成8000字论文并附真实参考文献!
  • Java计算机毕设之基于Springboot+Vue动漫推荐平台管理系统基于协同过滤算法的动漫推荐系统(完整前后端代码+说明文档+LW,调试定制等)
  • VAN.dll文件缺失找不到损坏问题 免费下载方法
  • 东南亚海外仓一件代发库存差异踩雷?4大原因+落地解决方案
  • 解码人类行为密码:驱动我们的15种深层欲望
  • [特殊字符] 一文看懂:Android 系统中如何“默认开启/关闭 USB 调试”?
  • Java毕设选题推荐:基于vue+协同过滤算法的动漫推荐系统热门动漫浏览、文章专栏阅读【附源码、mysql、文档、调试+代码讲解+全bao等】
  • CAD2025基础入门教程
  • Windows系统文件vb5chs.dll缺少损坏找不到问题 下载修复