栈示意图
使用 Java 实现栈
public class MyStack {
private int [ ] elements;
public MyStack ( ) {
elements = new int [ 0 ] ;
}
public void push ( int e) {
int [ ] newArray = new int [ elements. length + 1 ] ;
for ( int i = 0 ; i < elements. length; i++ ) {
newArray[ i] = elements[ i] ;
}
newArray[ elements. length] = e;
elements = newArray;
}
public void pop ( ) {
if ( elements. length == 0 ) {
throw new RuntimeException ( "Stack is Empty!" ) ;
}
int [ ] newArray = new int [ elements. length - 1 ] ;
for ( int i = 0 ; i < newArray. length; i++ ) {
newArray[ i] = elements[ i] ;
}
elements = newArray;
}
public int top ( ) {
if ( elements. length == 0 ) {
throw new RuntimeException ( "Stack is Empty!" ) ;
}
return elements[ elements. length - 1 ] ;
}
public boolean isEmpty ( ) {
return elements. length == 0 ;
}
public void show ( ) {
System. out. println ( Arrays. toString ( elements) ) ;
}
}