public class LinkedStack<Item> extends Object implements Iterable<Item>
This implementation uses a singly-linked list with a non-static nested class for
linked-list nodes. See Stack for a version that uses a static nested class.
The push, pop, peek, size, and is-empty
operations all take constant time in the worst case.
For additional documentation, see Section 1.3 of Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne.
| Constructor and Description |
|---|
LinkedStack()
Initializes an empty stack.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
isEmpty()
Is this stack empty?
|
Iterator<Item> |
iterator()
Returns an iterator to this stack that iterates through the items in LIFO order.
|
static void |
main(String[] args)
Unit tests the LinkedStack 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.
|
String |
toString()
Returns a string representation of this stack.
|
public boolean isEmpty()
public int size()
public void push(Item item)
item - the item to addpublic Item pop()
NoSuchElementException - if this stack is emptypublic Item peek()
NoSuchElementException - if this stack is emptypublic String toString()
public Iterator<Item> iterator()
public static void main(String[] args)
Copyright © 2014. All Rights Reserved.