Home
Main website
Display Sidebar
Hide Ads
Recent Changes
View Source:
LinkedList
Edit
PageHistory
Diff
Info
LikePages
You are viewing an old revision of this page.
View the current version
.
A data structure used in programming to allow dynamic length lists allowing quick iteration, addition and subtraction from the list. Random access is not quick, however, requiring a search of the list. There are a few variants of [LinkedList]s: singly-linked lists, doubly-linked lists and circular lists (which can be either singly or doubly linked). A simple singly linked list in C++: template<class T> struct !LinkedListNode { T data; !LinkedListNode *next; }; [LinkedList]s work by each node merely pointing to the next node in the list, where the last node has a NullPointer. Doubly-linked lists have a previous pointer as well, allowing bi-directional iteration. A circular list has the last node pointing back to the first node. Adding and deleting nodes aren't terribly complex but require a little thinking; you need to store temporary pointers and do a little magic. Most higher level languages have linked list constructs. For example C++ has the STL, Java has a LinkedList in its class libraries. If you are coding C, however, you might have to write your own.
3 pages link to
LinkedList
:
Stack
BinaryTree
NullPointer