Quick Index
Overview


This chapter discusses concepts and algorithms for a linked list. Algorithms will be shown in pseudocode or human language text.

A linked list conforms (meets) the DynamicList ADT spec (blueprint)

A linked list is an alternative to a dynamic array. For some cases a linked list will be more efficient than a DynamicArray, and vice-versa.

Some strengths of a linked list relative to a dynamic array:


Weaknesses of a linked list relative to a dynamic array:


Abbreviations


In this chapter, the following abbreviations are used:

Term/ElementWhich Means
DLNode, Node or nodeAll mean "doubly linked node"
Linked ListDoubly linked list
LLLinked List
single links in diagramsSome diagrams show forward "next" links. If not shown, backward "prev" links are implied.
nextA link from a node to the "next" node. Also called "forward link".
prevA link from a node to the "prev" node. Also called "backward link".
linkanother term for "next" or "prev"
pointeranother term for "next" or "prev"


Note: There is also a structure called a "singly linked list" but a doubly linked is generally preferred so we will focus on it.