जब लिंक्ड सूची के अंत से विशिष्ट नोड प्रिंट करने की आवश्यकता होती है, तो 'list_length' और 'return_from_end' विधियाँ परिभाषित की जाती हैं। 'list_length' लिंक्ड सूची की लंबाई लौटाता है।
'return_from_end' विधि का उपयोग लिंक्ड सूची के अंत से nवें तत्व को लौटाने के लिए किया जाता है।
उदाहरण
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 list_length(my_list):
my_len = 0
curr = my_list.head
while curr:
curr = curr.next
my_len = my_len + 1
return my_len
def return_from_end(my_list, n):
l = list_length(my_list)
curr = my_list.head
for i in range(l - n):
curr = curr.next
return curr.data
my_instance = LinkedList_structure()
my_list = input('लिंक्ड सूची के तत्व दर्ज करें..').split()
for elem in my_list:
my_instance.add_vals(int(elem))
n = int(input('n के लिए मान दर्ज करें.. '))
my_result = return_from_end(my_instance, n)
print('अंत से nवां तत्व है: {}'.format(my_result))
आउटपुट
लिंक्ड सूची के तत्व दर्ज करें.. 45 31 20 87 4 n के लिए मान दर्ज करें.. 2 अंत से nवां तत्व है: 87
व्याख्या
'Node' क्लास बनाई गई है।
आवश्यक विशेषताओं के साथ एक अन्य 'LinkedList_structure' क्लास बनाई गई है।
इसमें एक 'init' फ़ंक्शन है जो पहले तत्व, यानी 'head' और 'last_node' को 'None' इनिशियलाइज़ करने के लिए उपयोग किया जाता है।
'add_vals' नामक एक विधि परिभाषित की गई है, जो स्टैक में मान जोड़ने में मदद करती है।
'list_length' नामक एक विधि परिभाषित की गई है, जो लिंक्ड सूची की लंबाई निर्धारित करती है, और इसे आउटपुट के रूप में लौटाती है।
'return_from_end' नामक एक अन्य विधि परिभाषित की गई है, जो लिंक्ड सूची के अंत से 'n' मान लौटाने में मदद करती है।
'LinkedList_structure' का एक इंस्टेंस बनाया जाता है।
तत्वों को लिंक्ड सूची में जोड़ा जाता है।
तत्वों को कंसोल पर प्रदर्शित किया जाता है।
'return_from_end' विधि को इस लिंक्ड सूची पर कॉल किया जाता है।
आउटपुट कंसोल पर प्रदर्शित किया जाता है।