队列实现 java版本
2015-06-09 19:16
405 查看
public class Queue<T> implements Iterable<T>{ private class Node{//定义节点类 T item; Node nextNode; } private Node firstNode; private Node lastNode; private int N; public boolean isEmpty(){ return firstNode == null; } public int size(){ return N; } public void enQueue(T item){// 队尾插入新节点 Node oldNode = lastNode; lastNode = new Node(); if (isEmpty()) { firstNode = lastNode; } else{ oldNode.nextNode = lastNode; } N++; } public T deQueue(){// 队首插入新节点 T item = firstNode.item; firstNode = firstNode.nextNode; if(isEmpty()) lastNode = null; N--; return item; } // 以下实现Iterator 接口 ,方便迭代输出 , 可选实现 public Iterator iterator(){ return new queueIterator(); } private class queueIterator implements Iterator<T>{ Node iteratorNode = firstNode; @Override public boolean hasNext() { return iteratorNode != null; } @Override public T next() { T item = (T) iteratorNode.item; iteratorNode = iteratorNode.nextNode; return item; } } }
相关文章推荐
- 初次接触真正意义上的Java EE
- Java for LeetCode 211 Add and Search Word - Data structure design
- java 开发webservice
- java 开发webservice
- Ubuntu 14.04中安装Java
- java.lang.io包的使用
- java_eclipse_设置全局编码_utf-8_编译class指定_运行jar乱码解决_不依赖环境
- SpringMvc 异常处理特解
- Java并发编程:Lock
- Java for LeetCode 210 Course Schedule II
- java List 去重(两种方式)
- Java的HashMap和HashTable
- Java实现几种常见排序算法代码
- Java文本文件操作方法实例详解
- Eclipse 设置黑色主题
- 五、JAVA中类的探究-父类构造器
- Java 字符串计算频率出现最高的字符
- Core Java 笔记(二)
- springmvc乱码问题
- 在Eclipse中导入Tiny工程,有下面的错误,是什么原因?