Skip to content
Linked ListMedium

3. Insert at End

Traverses to the tail node (where curr.next is None) and attaches the new node to tail.next.

Time O(n) Space O(1)
Open in 3D Studio

Live loop — open the studio to scrub, add your own array, or race it in Battle Arena.

Asked in interviews at

NvidiaIntelQualcomm

Reference implementation (Python)

def insert_at_end(head, new_val):
    new_node = ListNode(new_val)
    if not head:
        return new_node
    curr = head
    while curr.next:
        curr = curr.next
    curr.next = new_node
    return head

Embed this visualization

Drop a live, looping 3. Insert at End canvas into a blog post or course page.

<iframe src="/embed/ll-insert-end" width="100%" height="380" style="border:1px solid #e6e8ec;border-radius:14px" loading="lazy" title="3D algorithm visualization by CodeWithMunnaX"></iframe>

Frequently asked

What is the time and space complexity of 3. Insert at End?

3. Insert at End runs in O(n) time and O(1) auxiliary space.

Is the 3. Insert at End visualizer free?

The core 3D visualizer, Web Audio chimes and step intuition are free. A one-time ₹49 Pro Pass unlocks advanced algorithms, large custom arrays, Battle Arena and reel export.

Which companies ask 3. Insert at End in interviews?

3. Insert at End shows up in interviews at Nvidia, Intel, Qualcomm.

How does the 3D visualization of 3. Insert at End work?

Each array value becomes a 3D pillar whose height maps to its value. Comparisons glow amber, swaps flash red, and settled elements lock green while a floating pointer badge tracks the active index — synchronized line-by-line with the Python code.

More Linked List