public class Node<Item> {
Item item;
Node<Item> next;
public Node() {
next = null;
}
}
堆栈的实现
public class Stack<Item> {
private Node<Item> first;
private int N;
public boolean isEmpty(){
return first == null;
}
public int size(){
return N;
}
public void push (Item item){
Node<Item> oldfirst = first;
first = new Node<>();
first.item = item;
first.next = oldfirst;
N++;
}
public Item pop() {
if (this.isEmpty()) {
return null;
}
Item item = first.item;
first = first.next;
N--;
return item;
}
public static void main(String[] args) {
Stack<String> stack = new Stack<>();
stack.push("to");
stack.push("be");
stack.push("or");
System.out.println(stack.pop());
System.out.println(stack.pop());
System.out.println(stack.pop());
System.out.println(stack.pop());
}
}
/////////////
or
be
to
null













网友评论