जब रिकर्सन का उपयोग करके लिंक की गई सूची में वैकल्पिक नोड्स को प्रिंट करने की आवश्यकता होती है, तो लिंक की गई सूची में तत्वों को जोड़ने की एक विधि, लिंक की गई सूची के तत्वों को प्रदर्शित करने की एक विधि और एक लिंक की गई सूची के वैकल्पिक मान प्राप्त करने की एक विधि है। परिभाषित। एक अन्य सहायक फ़ंक्शन का उपयोग किया जाता है जो वैकल्पिक मान प्राप्त करने के लिए पहले से परिभाषित विधि को कॉल करता है।
नीचे उसी के लिए एक प्रदर्शन है -
उदाहरण
class Node:
def __init__(self, data):
self.data = data
self.next = None
class my_linked_list:
def __init__(self):
self.head = None
self.last_node = None
def add_value(self, my_data):
if self.last_node is None:
self.head = Node(my_data)
self.last_node = self.head
else:
self.last_node.next = Node(my_data)
self.last_node = self.last_node.next
def print_it(self):
curr = self.head
while curr:
print(curr.data)
curr = curr.next
def alternate_nodes(self):
self.alternate_helper_fun(self.head)
def alternate_helper_fun(self, curr):
if curr is None:
return
print(curr.data, end = ' ')
if curr.next:
self.alternate_helper_fun(curr.next.next)
my_instance = my_linked_list()
my_list = input("Enter the elements of the linked list :").split()
for elem in my_list:
my_instance.add_value(elem)
print("The alternate elements in the linked list are :")
my_instance.alternate_nodes() आउटपुट
Enter the elements of the linked list :78 56 34 52 71 96 0 80 The alternate elements in the linked list are : 78 34 71 0
स्पष्टीकरण
-
'नोड' वर्ग बनाया गया है।
-
आवश्यक विशेषताओं के साथ एक और 'my_linked_list' वर्ग बनाया गया है।
-
इसमें एक 'init' फ़ंक्शन होता है जिसका उपयोग पहले तत्व को प्रारंभ करने के लिए किया जाता है, यानी 'हेड' से 'कोई नहीं' और अंतिम नोड को 'कोई नहीं'।
-
'add_value' नाम की एक अन्य विधि को परिभाषित किया गया है, जिसका उपयोग लिंक की गई सूची में डेटा जोड़ने के लिए किया जाता है।
-
'प्रिंट_इट' नामक एक अन्य विधि को परिभाषित किया गया है, जो सूची में पुनरावृत्त होती है, और तत्वों को प्रिंट करती है।
-
'alternate_nodes' नामक एक अन्य विधि को परिभाषित किया गया है जिसका उपयोग हेल्पर फ़ंक्शन को कॉल करने के लिए किया जाता है।
-
एक अन्य सहायक फ़ंक्शन, जिसका नाम 'alternate_helper_fun' है, को परिभाषित किया गया है जिसका उपयोग लिंक की गई सूची के माध्यम से पुनरावृति करने और वैकल्पिक सूचकांकों में तत्वों को प्रदर्शित करने के लिए किया जाता है।
-
यह एक पुनरावर्ती कार्य है, इसलिए यह स्वयं को बार-बार कॉल करता है।
-
इसका उपयोग 'alternate_nodes' फ़ंक्शन को कॉल करने के लिए किया जाता है क्योंकि रिकर्सन का उपयोग किया जा रहा है।
-
'my_linked_list' वर्ग का एक ऑब्जेक्ट बनाया जाता है।
-
वैकल्पिक तत्वों को प्रदर्शित करने के लिए, वैकल्पिक_नोड्स विधि को कहा जाता है।
-
यह आउटपुट कंसोल पर प्रदर्शित होता है।