简单大气网站模板,大学生asp网站开发的实训周,哈尔滨网站快速排名,站长工具app输入两个整数序列#xff0c;第一个序列表示栈的压入顺序#xff0c;请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序#xff0c;序列4,5,3,2,1是该压栈序列对应的一个弹出序列#xff0c;但4,3,5,1,2就不可能…输入两个整数序列第一个序列表示栈的压入顺序请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序序列4,5,3,2,1是该压栈序列对应的一个弹出序列但4,3,5,1,2就不可能是该压栈序列的弹出序列。注意这两个序列的长度是相等的
代码
package offer;
import java.util.Stack;
public class ti31 { static boolean IsPopOrder(int push[],int pop[]) { StackInteger stack new StackInteger(); int x 0; int i 0; while(xpop.length-1) { if(stack.empty()ipush.length) { stack.add(push[i]); i; } while(!stack.empty()pop[x]stack.peek()) { stack.pop(); x; } if(!stack.empty()pop[x]!stack.peek()) { if(ipush.length) { stack.add(push[i]); i; } else { return false; } } } return true; } public static void main(String[] args) { int push[] {1,2,3,4,5}; int pop[] {4,5,3,2,1}; System.out.println(IsPopOrder(push,pop)); } }