GoalScope — copy_list_with_random_pointer (Qwen2.5-Coder-32B-Instruct) — hover a token to see the patched verbalization
↵ <code>↵ def copy_list_with_random_pointer(head):↵ """Deep copy a linked list with random pointers."""↵ if not head:↵ return None↵ ↵ # Step 1: Create new nodes and insert them next to the original ones.↵ current = head↵ while current:↵ new_node = Node(current.val, current.next, None)↵ current.next = new_node↵ current = new_node.next↵ ↵ # Step 2: Assign random pointers for the new nodes.↵ current = head↵ while current:↵ if current.random:↵ current.next.random = current.random.next↵ current = current.next.next↵ ↵ # Step 3: Restore the original list and extract the copied list.↵ current = head↵ new_head = head.next↵ new_current = new_head↵ while current:↵ current.next = new_current.next↵ current = current.next↵ if new_current.next:↵ new_current.next = new_current.next.next↵ new_current = new_current.next↵ ↵ return new_head↵ </code>