模拟
class Solution {
public boolean validateStackSequences(int[] pushed, int[] popped) {
int pushNum = pushed.length;
int poped = popped.length;
int indexPush = 0;
int indexPop =0;
Stack<Integer> stack = new Stack<>();
boolean flag = true;
while(true){
if(indexPop==poped) break;
if(stack.size()==0) {
stack.push(pushed[indexPush]);
indexPush++;
}
if(stack.peek()==popped[indexPop]){
stack.pop();
indexPop++;
}
if(stack.size()!=0 && stack.peek()!=popped[indexPop] && indexPush<pushNum){
stack.push(pushed[indexPush]);
indexPush++;
}
if( stack.size()!=0 && stack.peek()!=popped[indexPop] && indexPush==pushNum){
flag = false;
break;
}
}
return flag;
}
}
作者:你的雷哥
本文版权归作者所有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。