Java:如何用链表实现栈

来源:互联网 发布:linux 复制粘贴命令 编辑:程序博客网 时间:2024/05/17 05:05
class Node<E>{Node<E> next=null;E data;public Node(E data) {this.data=data;}}public class Mystack<E> {Node<E> top=null;//栈顶//isEmpty(),测试堆栈是否为空。public boolean isEmpty() {return top==null;}//push()入栈public void push(E data) {Node<E> newNode=new Node(data);newNode.next=top;top=newNode;}//pop()出栈, 移除堆栈顶部的对象,并作为此函数的值返回该对象。public E pop() {if(this.isEmpty()) {return null;}E tem=top.data;top=top.next;return tem;}//peek()查看堆栈顶部的对象,但不从堆栈中移除它。public E peek() {if(isEmpty()) {return null;}return top.data;}}