类 ResizingArrayQueue<Item>

  • 所有已实现的接口:
    java.lang.Iterable<Item>

    public class ResizingArrayQueue<Item>
    extends java.lang.Object
    implements java.lang.Iterable<Item>
    The ResizingArrayQueue class represents a first-in-first-out (FIFO) queue of generic items. It supports the usual enqueue and dequeue operations, along with methods for peeking at the first item, testing if the queue is empty, and iterating through the items in FIFO order.

    This implementation uses a resizing array, which double the underlying array when it is full and halves the underlying array when it is one-quarter full. The enqueue and dequeue operations take constant amortized time. The size, peek, and is-empty operations takes constant time in the worst case.

    For additional documentation, see Section 1.3 of Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne.

    • 构造器概要

      构造器 
      构造器 说明
      ResizingArrayQueue()
      Initializes an empty queue.
    • 方法概要

      修饰符和类型 方法 说明
      Item dequeue()
      Removes and returns the item on this queue that was least recently added.
      void enqueue​(Item item)
      Adds the item to this queue.
      boolean isEmpty()
      Is this queue empty?
      java.util.Iterator<Item> iterator()
      Returns an iterator that iterates over the items in this queue in FIFO order.
      static void main​(java.lang.String[] args)
      Unit tests the ResizingArrayQueue data type.
      Item peek()
      Returns the item least recently added to this queue.
      int size()
      Returns the number of items in this queue.
      • 从类继承的方法 java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • 从接口继承的方法 java.lang.Iterable

        forEach, spliterator
    • 构造器详细资料

      • ResizingArrayQueue

        public ResizingArrayQueue()
        Initializes an empty queue.
    • 方法详细资料

      • isEmpty

        public boolean isEmpty()
        Is this queue empty?
        返回:
        true if this queue is empty; false otherwise
      • size

        public int size()
        Returns the number of items in this queue.
        返回:
        the number of items in this queue
      • enqueue

        public void enqueue​(Item item)
        Adds the item to this queue.
        参数:
        item - the item to add
      • dequeue

        public Item dequeue()
        Removes and returns the item on this queue that was least recently added.
        返回:
        the item on this queue that was least recently added
        抛出:
        java.util.NoSuchElementException - if this queue is empty
      • peek

        public Item peek()
        Returns the item least recently added to this queue.
        返回:
        the item least recently added to this queue
        抛出:
        java.util.NoSuchElementException - if this queue is empty
      • iterator

        public java.util.Iterator<Item> iterator()
        Returns an iterator that iterates over the items in this queue in FIFO order.
        指定者:
        iterator 在接口中 java.lang.Iterable<Item>
        返回:
        an iterator that iterates over the items in this queue in FIFO order
      • main

        public static void main​(java.lang.String[] args)
        Unit tests the ResizingArrayQueue data type.
        参数:
        args - the command-line arguments