使用带有头尾节点的单链表实现队列
Posted fightzhao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用带有头尾节点的单链表实现队列相关的知识,希望对你有一定的参考价值。
package db; public class Queue<E> { /** * 内部类--单链表 * @author fightzhao * * @param <E> */ private static class Node<E> { public Node<E> next; public E data; public Node(E data, Node<E> next) { this.data = data; this.next = next; } } private Node<E> front; private Node<E> rear; private int theSize; /** * 入队 * @param data */ public void enqueue(E data) { Node<E> pNode = new Node<E>(data, null); if (rear != null) { rear.next = pNode; rear = pNode; } else { front = rear = pNode; } theSize++; } public int size() { return theSize; } /** * 出队 * @return */ public E dequeue() { E data = front.data; if (front.next != null) { front = front.next; } else { front = rear = null; } theSize--; return data; } public Queue(){ front = null; rear = null; } public void printAll(){ Node<E> pNode= front; while(pNode!=null){ System.out.println(pNode.data); pNode=pNode.next; } } }
以上是关于使用带有头尾节点的单链表实现队列的主要内容,如果未能解决你的问题,请参考以下文章