A method that calls itself
Involves the use of stacks to store data that will be returned at end
Can be memory intensive if many recursive calls are made
A data structure
LIFO
dynamic
push()
pop()
isEmpty()
FIFO
dynamic
enqueue()
dequeue()
isEmpty()
Printer queues
Computer modelling of real-life queues (like in supermarkets)
Linear collection of nodes, which are self-referential
Nodes connected by pointer links
Single head, single tail
Each node has two pointers - one to next, one to previous
Single head
One pointer for each element
Last element’s pointer points to head
Pros
Can change size while program is running
Makes efficient use of memory
Storage no longer required can be returned to the system for other use
Cons
Difficult to program
Can be slow / complex to implement
A linked list only allows serial (in order) search
Pros
Easy to program
Easy to check for overflow
An array allows random access
Does not change in size while program is running
Cons
Can waste space
Programmer has to estimate space needed, could be wrong