当前位置:网站首页>946. Verify stack sequence
946. Verify stack sequence
2022-07-05 12:54:00 【accumulate steadily ض】
Given pushed and popped Two sequences , In each sequence The values are not repeated , Only if they could have been pushed on the original empty stack push And pop up pop When manipulating the result of a sequence , return true; otherwise , return false .
Example 1:
Input :pushed = [1,2,3,4,5], popped = [4,5,3,2,1] Output :true explain : We can do it in the following order : push(1), push(2), push(3), push(4), pop() -> 4, push(5), pop() -> 5, pop() -> 3, pop() -> 2, pop() -> 1
Example 2:
Input :pushed = [1,2,3,4,5], popped = [4,3,5,1,2] Output :false explain :1 Can't be in 2 Pop up before .
Tips :
1 <= pushed.length <= 10000 <= pushed[i] <= 1000pushedAll elements of Different from each otherpopped.length == pushed.lengthpoppedyespushedAn arrangement of
Our approach is to stack the stack sequence first , When the out of stack sequence is the same as the in stack sequence , The elements at the top of the stack should be out of the stack , At the same time, the stack sequence then traverses the next element
This is the same situation :

This is a different situation :

Ideas :
Let the stack queue stack one by one , See whether the top element of the stack is the same as the out of stack queue element , If it's not the same , Let the stack queue stack one by one , If it is the same, let the top element out of the stack , At the same time, the stack queue traverses the next element , Continue reciprocating cycle , Finally, if the stack array traversal is completed and the stack is empty, it proves that the stack queue is the same as the stack queue , If the last stack array traversal is completed and the stack is not empty , That proves that the stack in queue is different from the stack out queue .
class Solution {
public boolean validateStackSequences(int[] pushed, int[] popped) {
Stack<Integer> s = new Stack<Integer>();
int index = 0;
for(int i = 0 ; i < pushed.length; i ++){
s.push(pushed[i]);// Push the stack sequence onto the stack
while(!s.isEmpty() && index<popped.length&&popped[index] == s.peek()){
// When the stack is not empty and index Do not cross the boundary to see whether the stack sequence is the same as the top element
s.pop();// If the same pop-up stack top element
index++;// Traverse the next element
}
}
return s.isEmpty();
}
}边栏推荐
- Introduction to the principle of DNS
- SAP UI5 ObjectPageLayout 控件使用方法分享
- View and terminate the executing thread in MySQL
- 10 minute fitness method reading notes (5/5)
- Principle of universal gbase high availability synchronization tool in Nanjing University
- Introduction to relational model theory
- Transactions from December 27 to 28, 2021
- Super efficient! The secret of swagger Yapi
- 10 minute fitness method reading notes (3/5)
- SAP UI5 FlexibleColumnLayout 控件介绍
猜你喜欢

JDBC exercise - query data encapsulated into object return & simple login demo

JDBC -- use JDBC connection to operate MySQL database

前几年外包干了四年,秋招感觉人生就这样了..

VoneDAO破解组织发展效能难题

Simply take stock reading notes (4/8)

Notes for preparation of information system project manager --- information knowledge

A few years ago, I outsourced for four years. Qiu Zhao felt that life was like this

DNS的原理介绍

Making and using the cutting tool of TTF font library

SAP SEGW 事物码里的 ABAP 类型和 EDM 类型映射的一个具体例子
随机推荐
GPON other manufacturers' configuration process analysis
Volatile instruction rearrangement and why instruction rearrangement is prohibited
SAP SEGW 事物码里的导航属性(Navigation Property) 和 EntitySet 使用方法
Storage Basics
激动人心!2022开放原子全球开源峰会报名火热开启!
Using docker for MySQL 8.0 master-slave configuration
Taobao short video, why the worse the effect
##无监控,不运维,以下是监控里常用的脚本监控
SAP SEGW 事物码里的 ABAP Editor
Distance measuring sensor chip 4530a used in home intelligent lighting
Kotlin process control and circulation
初识Linkerd项目
RHCSA7
Kotlin函数
石臻臻的2021总结和2022展望 | 文末彩蛋
JDBC -- use JDBC connection to operate MySQL database
Docker configures redis and redis clusters
RHCSA2
国内市场上的BI软件,到底有啥区别
View and modify the MySQL data storage directory under centos7