public class Stack {
private int[] data;
private int ptr;
public Stack(int size) {
data = new int[size];
ptr = 0;
}
public void push(int x) {
if (ptr < data.length)
data[ptr++] = x;
}
public int pop() {
if (ptr > 0)
return data[--ptr];
else
return Integer.MIN_VALUE;
}
public int top() {
if (ptr > 0)
return data[ptr-1];
else
return Integer.MIN_VALUE;
}
public int size() {
return ptr;
}
public static void main(String[] args) {
Stack stk = new Stack(5);
for (int i = 0; i < 5; ++i)
stk.push(i);
while (stk.size() > 0)
System.out.print(stk.pop() + " ");
System.out.println();
}
}