List: Difference between revisions
Line 15: | Line 15: | ||
A '''doubly linked list''' has elements that maintain a ''next'' pointer to successor in the list and a ''prev'' pointer to the predecessor in the list. | A '''doubly linked list''' has elements that maintain a ''next'' pointer to successor in the list and a ''prev'' pointer to the predecessor in the list. | ||
The first element of a list is called '''head''' and the last element is called '''tail'''. For a doubly linked list, the ''head.prev'' is NULL, and for all linked lists, ''tail.next'' is NULL. | |||
=Array List= | =Array List= |
Revision as of 23:06, 11 August 2018
Internal
Overview
A list is an implementation of a dynamic set.
Linked Lists
A linked list is a data structure implementing a dynamic set in which the elements are arranged in a linear order. The order is determined by pointers maintained by elements to other elements in the list. All dictionary operations (INSERT, DELETE, SEARCH) can be implemented for a list.
A simply linked list has elements that maintain a next pointer to the next element in the list. The last element's next pointer contains NULL.
A doubly linked list has elements that maintain a next pointer to successor in the list and a prev pointer to the predecessor in the list.
The first element of a list is called head and the last element is called tail. For a doubly linked list, the head.prev is NULL, and for all linked lists, tail.next is NULL.