जब यह जांचना होता है कि दो लिंक्ड लिस्ट समान हैं या नहीं, तो लिंक्ड लिस्ट में एलिमेंट्स जोड़ने और लिंक्ड लिस्ट में एलिमेंट्स की समानता जांचने के लिए मेथड्स डिफाइन की जाती हैं।
उदाहरण
class Node:
def __init__(self, data):
self.data = data
self.next = None
class LinkedList_structure:
def __init__(self):
self.head = None
self.last_node = None
def add_vals(self, data):
if self.last_node is None:
self.head = Node(data)
self.last_node = self.head
else:
self.last_node.next = Node(data)
self.last_node = self.last_node.next
def check_equality(list_1, list_2):
curr_1 = list_1.head
curr_2 = list_2.head
while (curr_1 and curr_2):
if curr_1.data != curr_2.data:
return False
curr_1 = curr_1.next
curr_2 = curr_2.next
if curr_1 is None and curr_2 is None:
return True
else:
return False
my_linked_list_1 = LinkedList_structure()
my_linked_list_2 = LinkedList_structure()
my_list = input('पहली लिंक्ड लिस्ट के एलिमेंट्स दर्ज करें: ').split()
for elem in my_list:
my_linked_list_1.add_vals(int(elem))
my_list = input('दूसरी लिंक्ड लिस्ट के एलिमेंट्स दर्ज करें: ').split()
for elem in my_list:
my_linked_list_2.add_vals(int(elem))
if check_equality(my_linked_list_1, my_linked_list_2):
print('दोनों लिंक्ड लिस्ट समान हैं')
else:
print('दोनों लिंक्ड लिस्ट समान नहीं हैं')
आउटपुट
पहली लिंक्ड लिस्ट के एलिमेंट्स दर्ज करें: 34 56 89 12 45 दूसरी लिंक्ड लिस्ट के एलिमेंट्स दर्ज करें: 57 23 78 0 2 दोनों लिंक्ड लिस्ट समान नहीं हैं
व्याख्या
'Node' क्लास बनाई गई है।
आवश्यक एट्रिब्यूट्स के साथ 'LinkedList_structure' क्लास बनाई गई है।
इसमें एक 'init' फंक्शन है जो पहले एलिमेंट यानी 'head' को 'None' और 'last_node' को 'None' से इनिशियलाइज़ करता है।
'add_vals' नामक एक मेथड डिफाइन की गई है, जो लिंक्ड लिस्ट में वैल्यू जोड़ने में मदद करती है।
'check_equality' नामक एक अन्य मेथड डिफाइन की गई है, जो यह जांचने में मदद करती है कि दो लिंक्ड लिस्ट में एलिमेंट्स समान हैं या नहीं।
यह समानता के आधार पर True या False रिटर्न करती है।
'LinkedList_structure' के दो इंस्टेंस बनाए गए हैं।
दोनों लिंक्ड लिस्ट में एलिमेंट्स जोड़े गए हैं।
इन दो लिंक्ड लिस्ट पर 'check_equality' मेथड कॉल की गई है।
आउटपुट कंसोल पर डिस्प्ले किया गया है।