类 ResizingArrayStack<Item>

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

    public class ResizingArrayStack<Item>
    extends java.lang.Object
    implements java.lang.Iterable<Item>
    The ResizingArrayStack class represents a last-in-first-out (LIFO) stack of generic items. It supports the usual push and pop operations, along with methods for peeking at the top item, testing if the stack is empty, and iterating through the items in LIFO 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 push and pop 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.

    • 构造器概要

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

      修饰符和类型 方法 说明
      boolean isEmpty()
      Is this stack empty?
      java.util.Iterator<Item> iterator()
      Returns an iterator to this stack that iterates through the items in LIFO order.
      static void main​(java.lang.String[] args)
      Unit tests the Stack data type.
      Item peek()
      Returns (but does not remove) the item most recently added to this stack.
      Item pop()
      Removes and returns the item most recently added to this stack.
      void push​(Item item)
      Adds the item to this stack.
      int size()
      Returns the number of items in the stack.
      • 从类继承的方法 java.lang.Object

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

        forEach, spliterator
    • 构造器详细资料

      • ResizingArrayStack

        public ResizingArrayStack()
        Initializes an empty stack.
    • 方法详细资料

      • isEmpty

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

        public int size()
        Returns the number of items in the stack.
        返回:
        the number of items in the stack
      • push

        public void push​(Item item)
        Adds the item to this stack.
        参数:
        item - the item to add
      • pop

        public Item pop()
        Removes and returns the item most recently added to this stack.
        返回:
        the item most recently added
        抛出:
        java.util.NoSuchElementException - if this stack is empty
      • peek

        public Item peek()
        Returns (but does not remove) the item most recently added to this stack.
        返回:
        the item most recently added to this stack
        抛出:
        java.util.NoSuchElementException - if this stack is empty
      • iterator

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

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