![]()
import java.util.Random;
import java.util.Stack;
public class test21{
private static Stack<Integer> dataStack = new Stack<Integer>();
private static Stack<Integer> minStack = new Stack<Integer>();
public static int min(){
if(!dataStack.isEmpty()&&!minStack.isEmpty()){
return minStack.lastElement();
}
return -1;
}
public static void push(int data){
dataStack.push(data);
if(minStack.size()==0||minStack.lastElement()>data){
minStack.push(data);
}else{
minStack.push(minStack.lastElement());
}
}
public static int pop(){
if(!dataStack.isEmpty()&&!minStack.isEmpty()){
minStack.pop();
return dataStack.pop();
}
return -1;
}
public static void main(String[] args){
Random random = new Random();
for(int i=0;i<10;i++){//入栈
int data = random.nextInt(10);//0-100
push(data);
System.out.print("=====data======="+data);
System.out.println("=====min======="+min());
}
System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%");
for(int i=0;i<10;i++){//出栈
int data = pop();
System.out.print("=====data======="+data);
System.out.println("=====min======="+min());
}
}
}