|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.batik.util.DoublyLinkedList
public class DoublyLinkedList
A simple Doubly Linked list class, designed to avoid O(n) behaviour on insert and delete.
| Nested Class Summary | |
|---|---|
static class |
DoublyLinkedList.Node
Basic doubly linked list node interface. |
| Constructor Summary | |
|---|---|
DoublyLinkedList()
|
|
| Method Summary | |
|---|---|
void |
add(DoublyLinkedList.Node nde)
Adds nde to the head of the list. |
void |
add(int index,
DoublyLinkedList.Node nde)
|
void |
empty()
Removes all elements from the list. |
DoublyLinkedList.Node |
getHead()
Get the current head element |
int |
getSize()
Returns the number of elements currently in the list. |
DoublyLinkedList.Node |
getTail()
Get the current tail element |
DoublyLinkedList.Node |
pop()
Removes 'head' from list and returns it. |
void |
push(DoublyLinkedList.Node nde)
Adds nde to tail of list |
void |
remove(DoublyLinkedList.Node nde)
Removes nde from the list it is part of (should be this one, otherwise results are undefined). |
void |
touch(DoublyLinkedList.Node nde)
Moves nde to the head of the list (equivilent to
remove(nde); add(nde); but faster. |
void |
unpop(DoublyLinkedList.Node nde)
Adds nde to head of list |
DoublyLinkedList.Node |
unpush()
Removes 'tail' from list and returns it. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public DoublyLinkedList()
| Method Detail |
|---|
public int getSize()
public void empty()
public DoublyLinkedList.Node getHead()
public DoublyLinkedList.Node getTail()
public void touch(DoublyLinkedList.Node nde)
nde to the head of the list (equivilent to
remove(nde); add(nde); but faster.
public void add(int index,
DoublyLinkedList.Node nde)
public void add(DoublyLinkedList.Node nde)
nde to the head of the list.
In perl this is called an 'unpop'. nde should
not currently be part of any list.
nde - the node to add to the list.public void remove(DoublyLinkedList.Node nde)
nde - node to remove.public DoublyLinkedList.Node pop()
public DoublyLinkedList.Node unpush()
public void push(DoublyLinkedList.Node nde)
nde to tail of list
public void unpop(DoublyLinkedList.Node nde)
nde to head of list
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||