A linked list is a linear data structure where each element is a separate object.
Linked list elements are not stored at contiguous location; the elements are linked using pointers.
Each node of a list is made up of two items - the data and a reference to the next node. The last node has a reference to null. The entry point into a linked list is called the head of the list. It should be noted that head is not a separate node, but the reference to the first node. If the list is empty then the head is a null reference.
// Linked list example in C/C++
// A linked list node
struct ListNode
{
int val;
struct ListNode *next;
};
// Linked list example in Java
// Linked list class
class ListNode
{
// head of list
Node head;
// Node class
class Node
{
int val;
Node next;
// Constructor to create a new node
Node(int v) {
val = v;
}
}
}
# Linked list example in Python
# Node class
class Node:
# Function to initialize the node object
def __init__(self, v):
self.val = v # Assign value
self.next = None # Initialize next as null
# Linked List class
class ListNode:
# Function to initialize the Linked List
def __init__(self):
self.head = None
| Problem | Score | Companies | Time | Status |
|---|---|---|---|---|
| Sort Binary Linked List | 200 |
|
33:21 | |
| Partition List | 275 |
|
49:36 | |
| Insertion Sort List | 300 |
|
49:25 | |
| Sort List | 350 |
|
59:53 |
| Problem | Score | Companies | Time | Status |
|---|---|---|---|---|
| Palindrome List | 200 |
|
47:06 | |
| Remove Duplicates from Sorted List II | 300 |
|
57:51 | |
| Merge Two Sorted Lists | 300 |
|
29:11 | |
| Remove Duplicates from Sorted List | 300 |
|
17:58 | |
| Remove Nth Node from List End | 350 |
|
27:38 |
| Problem | Score | Companies | Time | Status |
|---|---|---|---|---|
| K reverse linked list | 200 |
|
60:30 | |
| Even Reverse | 200 |
|
46:24 | |
| Swap List Nodes in pairs | 350 |
|
33:34 | |
| Rotate List | 350 |
|
33:58 |
| Problem | Score | Companies | Time | Status |
|---|---|---|---|---|
| Kth Node From Middle | 200 |
|
30:13 | |
| Reverse Alternate K Nodes | 300 |
|
54:47 | |
| Reverse Link List II | 450 |
|
57:24 | |
| Reorder List | 600 |
|
57:10 |
| Problem | Score | Companies | Time | Status |
|---|---|---|---|---|
| Add Two Numbers as Lists | 250 |
|
43:07 | |
| List Cycle | 600 |
|
39:15 |