题解 | #栈的压入、弹出序列#

栈的压入、弹出序列

http://www.nowcoder.com/practice/d77d11405cc7470d82554cb392585106

写出来后比想象的要简单,先向空栈中压入一个无穷大的元素,使之非空
两个vector p1,p2
coun1表示入过栈的元素个数,count2表示已弹出元素的个数
规则:若栈顶元素与此时要弹出的元素不相等,从p1中往栈中压入元素,count1++;相等则从栈中弹出元素,count2++.

开始循环,直到弹出p2.size()个元素
while(s.top()!=p2[count2]&&count1<p1.size())
{
s.push(p1[count1]);
count1++;
}
//循环结束之后,要么栈顶等于要出的元素,否则代表所有元素都压入都没有要出的元素,return false

全部评论

相关推荐

不愿透露姓名的神秘牛友
06-26 15:18
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客84809583...:举报了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务