题解 | #栈的压入、弹出序列#
栈的压入、弹出序列
https://www.nowcoder.com/practice/d77d11405cc7470d82554cb392585106
using System;
using System.Collections.Generic;
class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param pushV int整型一维数组
* @param popV int整型一维数组
* @return bool布尔型
*/
public bool IsPopOrder (List<int> pushV, List<int> popV) {
// write code here
List<int> stack = new List<int>();
int j=0;
for(int i=0;i<pushV.Count;i++)
{
stack.Add(pushV[i]);
while(stack[stack.Count-1]==popV[j])
{
stack.RemoveAt(stack.Count-1);
j++;
if(stack.Count==0) break;//此处如果List为空,直接break,否则0-1后,下标会出现负数
}
}
if(stack.Count==0)
return true;
else return false;
}
}