Java堆栈实现

来源:互联网 发布:中国水资源的浪费数据 编辑:程序博客网 时间:2024/05/16 14:00

Java堆栈实现

import java.util.Iterator;/** *  * @author Youda *基于链表的堆栈实现 * @param <Item> */public class Stack<Item> implements Iterable<Item> {private int COUNT; //栈元素数量private Node first; //栈顶元素/** * 节点定义 * @author Youda * */private class Node{Item item;Node next;}//判断栈是否为空public boolean isEmpty(){return COUNT==0;// return first == null;}//获取栈元素数量public int getCount(){return COUNT;}//进栈public void pust(Item item){//新元素插入栈顶Node node = first;first = new Node();first.item = item;first.next = node;COUNT++;}//出栈public Item pop(){//返回第一个元素并删除Item item = first.item;first = first.next;COUNT--;return item;}@Overridepublic Iterator<Item> iterator() {// TODO Auto-generated method stubreturn new ListIterator();}private class ListIterator implements Iterator<Item>{private Node currentNode = first;@Overridepublic boolean hasNext() {return currentNode !=null;}@Overridepublic Item next() {Item item = currentNode.item;currentNode = currentNode.next;return item;}}}









原创粉丝点击