Linked List
A Linked List is a linear data structure where elements are stored in nodes, and each node points to the next node. It allows dynamic memory allocation and efficient insertion/deletion operations.
Linked List Visualization
Linked list is empty
Linked List: Empty
Complexity
Time Complexity:
O(1) for insert/delete, O(n) for searchSpace Complexity:
O(n)Pseudocode
class Node:
data: value
next: pointer to next node
class LinkedList:
function insert(value, position):
new_node = Node(value)
new_node.next = current_node.next
current_node.next = new_node
function delete(value):
find node with value
previous.next = current.nextRelated Algorithms
Stack
A Stack is a linear data structure that follows the Last-In-First-Out (LIFO) principle. Elements are added and removed from the same end (top). Common operations include push, pop, and peek.
Time: O(1) for push/pop/peek | Space: O(n)
Queue
A Queue is a linear data structure that follows the First-In-First-Out (FIFO) principle. Elements are added at the rear and removed from the front. Common operations include enqueue and dequeue.
Time: O(1) for enqueue/dequeue | Space: O(n)