Overview: Characteristics of Data Structures


Data Structure
Advantages
Disadvantages
Array
Quick insertion, very
fast acess if index
is known
Slow search,
slow deletion,
fixed size.
Ordered Array
Quicker search than
unsorted array.
Slow insertion and
deletion, fixed size
Stack
Provides last-in,
first-out access
Slow access to
other items
Queue
Provides first-in,
last-out access
Slow access to
other items
Linked list
Quick insertion,
quick deletion
slow search
Binary tree
quick search, insertion
deletion (if tree
remains balanced)
Deletion algorithm
is complex
Red-black tree
quick search, insertion,
deletion.  Tree always
balanced
Complex.
Hash table
Very fast access if
key known.  Fast insertion
Slow deletion,
access slow if key
not known, inefficient
memory usage
"Heap"
Fast insertion, deletion,
access to largest item
slow access to other items
Graph
 (tree)
Models real-world
situations
Some algorithms are
slow and complex

from:  Data Structures & Algorithms in Java, by Robert Lafore (2003), pp 11-12