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

栈的压入、弹出序列

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

需要同时遍历两个数组的全部元素,时间复杂度O(n); 借助一个栈,最坏的情况下,全部入栈,空间复杂度O(n)。

import java.util.Stack;

public class Solution { public boolean IsPopOrder(int [] pushA,int [] popA) { if(pushA.length != popA.length) return false; Stack stack = new Stack<>(); stack.push(pushA[0]); int i, j; for(i = 1,j = 0; i < pushA.length && j < popA.length; ){ if( stack.isEmpty() !=true && popA[j] == stack.peek()){ stack.pop(); j++; }else{ stack.push(pushA[i]); i++; } } while(j < popA.length){ if(popA[j] == stack.peek()){ stack.pop(); j++; }else return false; } return true; } }

全部评论

相关推荐

06-15 02:05
已编辑
南昌航空大学 数据分析师
Eason三木:你如果想干技术岗,那几个发公众号合唱比赛的经历就去掉,优秀团员去掉,求职没用。然后CET4这种不是奖项,是技能,放到下面的专业技能里或者单独列一个英语能力。 另外好好改改你的排版,首行缩进完全没有必要,行间距好好调调,别让字和标题背景黏在一起,你下面说能做高质量PPT你得展现出来啊,你这简历排版我用PPT做的都能比你做的好。 然后自我评价,你如果要干数据工程师,抗压能力强最起码得有吧。
简历中的项目经历要怎么写
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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