# Python Program to Find the first Common Element between the 2 given Linked Lists

When it is required to find the common element that occurs for the first time between two linked lists, a method to add elements to the linked list, and a method to get the common element that occurs for the first time in these linked lists is defined.

Below is a demonstration for the same −

## Example

Live Demo

class Node:
def __init__(self, data):
self.data = data
self.next = None

def __init__(self):
self.last_node = None

if self.last_node is None:
else:
self.last_node.next = Node(data)
self.last_node = self.last_node.next

def first_common_val(list_1, list_2):
while curr_1:
data = curr_1.data
while curr_2:
if data == curr_2.data:
return data
curr_2 = curr_2.next
curr_1 = curr_1.next
return None

my_list = input('Enter the elements of the first linked list : ').split()
for elem in my_list:

my_list = input('Enter the elements of the second linked list : ').split()
for elem in my_list:

common_vals = first_common_val(my_list_1, my_list_2)

if common_vals:
print('The element that is present first in the first linked list and is common to both is {}.'.format(common))
else:
print('The two lists have no common elements')

## Output

Enter the elements of the first linked list : 45 67 89 123 45
Enter the elements of the second linked list : 34 56 78 99 0 11
The two lists have no common elements

## Explanation

• The ‘Node’ class is created.

• Another ‘LinkedList_structure’ class with required attributes is created.

• It has an ‘init’ function that is used to initialize the first element, i.e the ‘head’ to ‘None’.

• A method named ‘add_vals’ is defined, that helps add a value to the stack.

• Another method named ‘first_common_val’ is defined, that helps find the first common value that was found in the two linked lists.

• Two instances of the ‘LinkedList_structure’ are created.