# Solution: Union and Intersection of Linked Lists

Let's solve the Union and Intersection of Linked Lists problem.

We'll cover the following

## Statement

Given the heads of two linked lists, head1 and head2, as inputs. Implement the union and intersection functions for the linked lists. The order of elements in the output lists doesn’t matter.

Here’s how you will implement the functions:

• UnionThis combines elements from two sets, removing duplicates, to form a new set with all unique elements from both original sets.: This function will take two linked lists as input and return a new linked list containing all the unique elements.

• IntersectionThis identifies and collects elements that are common to both sets, excluding all others, to create a set of shared elements.: This function will take two linked lists as input and return all the common elements between them as a new linked list.

Constraints:

Let n be the number of nodes in both linked lists:

• $0 \leq$ n $\leq 5 \times 10^2$

• $-5 \times 10^3 \leq$ node.data $\leq 5 \times 10^3$

## Solution

We need to implement two operations:

• Combine the two linked lists to perform a union of linked lists.

• Take out common elements from the linked lists to perform intersection.

Union of linked lists