笔记....
package com.juan;
public class MyArrayStack<AnyType> {
private int top = -1;
private AnyType[] stack;
private static final int DEFAULT_CAPACITY = 10;
public MyArrayStack(int max){
stack = (AnyType[]) new Object[max];
}
public boolean isEmpty(){
return (top == -1);
}
public AnyType peek(){
if(top < 0){
System.out.println("empty...");
return null;
}else{
return stack[top];
}
}
public void push(AnyType x){
if(top == stack.length -1){
System.out.println("full stack....");
}else{
stack[++top] = x;
}
}
public AnyType pop(){
if(top < 0){
System.out.println("empty...");
return null;
}else{
return stack[top--];
}
}
}
--------------------------------------------------------------------------------------------------------------
package com.juan;
public class MyLinkedListStack<AnyType> {
private static class Node<AnyType>{
AnyType x;
Node next;
public Node(AnyType x){
this.x = x;
}
}
private Node top = null;
public boolean isEmpty(){
return top == null;
}
public AnyType peek(){
if(top == null){
System.out.println("empty stack..");
return null;
}else{
return (AnyType) top.x;
}
}
public void push(AnyType x){
Node newNode = new Node(x);
newNode.next = top;
top = newNode;
}
public AnyType pop(){
if(top == null){
System.out.println("empty stack...");
return null;
}
AnyType x = (AnyType) top.x;
top = top.next;
return x;
}
}