Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

दोहरी लिंक की गई सूची से अधिकतम और न्यूनतम मान नोड खोजने के लिए पायथन प्रोग्राम

जब दोहरी लिंक की गई सूची से अधिकतम और न्यूनतम मूल्यों को खोजने की आवश्यकता होती है, तो एक 'नोड' वर्ग बनाने की आवश्यकता होती है। इस वर्ग में, तीन विशेषताएं हैं, डेटा जो नोड में मौजूद है, लिंक की गई सूची के अगले नोड तक पहुंच और लिंक की गई सूची के पिछले नोड तक पहुंच है।

नीचे उसी के लिए एक प्रदर्शन है -

उदाहरण

class Node:
   def __init__(self, my_data):
      self.prev = None
      self.data = my_data
      self.next = None
class double_list:
   def __init__(self):
      self.head = None
      self.tail = None
   def add_data(self, my_data):
      new_node = Node(my_data)
      if(self.head == None):
         self.head = self.tail = new_node
         self.head.previous = None
         self.tail.next = None
      else:
         self.tail.next = new_node
         new_node.previous = self.tail
         self.tail = new_node
         self.tail.next = None
   def min_node(self):
      curr = self.head
      if(self.head == None):
         print("The list is empty")
         return 0
      else:
         min = self.head.data
         while(curr != None):
            if(min > curr.data):
               min = curr.data
            curr = curr.next
         return min
   def max_node(self):
      curr = self.head
      if(self.head == None):
         print("The list is empty")
         return 0
      else:
         max = self.head.data
         while(curr != None):
            if(curr.data > max):
               max = curr.data
            curr = curr.next
      return max
   def print_it(self):
      curr = self.head
      if (self.head == None):
         print("The list is empty")
         return
      print("The nodes in the doubly linked list are :")
      while curr != None:
         print(curr.data)
         curr = curr.next
my_instance = double_list()
print("Elements are being added to the doubly linked list")
my_instance.add_data(10)
my_instance.add_data(24)
my_instance.add_data(54)
my_instance.add_data(77)
my_instance.add_data(92)
my_instance.print_it()
print("The node with maximum value is : ")
print(my_instance.max_node())
print("The node with minimum value is : ")
print(my_instance.min_node())

आउटपुट

Elements are being added to the doubly linked list
The nodes in the doubly linked list are :
10
24
54
77
92
The node with maximum value is :
92
The node with minimum value is :
10

स्पष्टीकरण

  • 'नोड' वर्ग बनाया गया है।
  • आवश्यक विशेषताओं वाला एक और वर्ग बनाया गया है।
  • 'add_data' नाम की एक विधि परिभाषित की गई है, जिसका उपयोग डबल लिंक्ड सूची में डेटा जोड़ने के लिए किया जाता है।
  • 'print_it' नाम की एक अन्य विधि परिभाषित की गई है, जो सर्कुलर लिंक्ड सूची के नोड्स को प्रदर्शित करती है।
  • 'max_node' नाम की एक और विधि परिभाषित की गई है, जो एक डबल लिंक्ड सूची में अधिकतम मान की खोज करती है।
  • 'min_node' नाम की एक और विधि परिभाषित की गई है, जो डबल लिंक की गई सूची में न्यूनतम मान की खोज करती है।
  • 'डबल_लिस्ट' वर्ग का एक ऑब्जेक्ट बनाया जाता है, और डबल लिंक्ड सूची में नोड के न्यूनतम और अधिकतम मानों को खोजने के लिए विधियों को बुलाया जाता है।
  • एक 'init' विधि को परिभाषित किया गया है, कि दोहरी लिंक की गई सूची के रूट, हेड और टेल नोड्स किसी से नहीं।
  • सूची को पुनरावृत्त किया गया है, और अधिकतम और न्यूनतम मान पाए गए हैं।
  • यह 'print_it' पद्धति का उपयोग करके कंसोल पर प्रदर्शित होता है।

  1. पायथन में उप-पेड़ों के नोड मानों के योग से न्यूनतम मान ज्ञात करने का कार्यक्रम

    मान लीजिए, हमारे पास एक पेड़ है जिसके सभी नोड्स 1 से n तक गिने गए हैं। प्रत्येक नोड में एक पूर्णांक मान होता है। अब यदि हम पेड़ से एक किनारा हटाते हैं, तो दो उप-वृक्षों के नोड मानों के योग में अंतर न्यूनतम होना चाहिए। हमें ऐसे उप-वृक्षों के बीच न्यूनतम अंतर का पता लगाना और वापस करना होगा। पेड़ हमें

  1. पायथन में एकल लिंक की गई सूची के मध्य नोड को खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास एक एकल लिंक्ड सूची नोड है, हमें मध्य नोड का मान ज्ञात करना है। और जब दो मध्य नोड होंगे, तो हम दूसरे को वापस कर देंगे। हमें इसे सिंगल पास में हल करने का प्रयास करना होगा। इसलिए, अगर इनपुट [5,9,6,4,8,2,1,4,5,2] जैसा है, तो आउटपुट 2 होगा। इसे हल करने के लिए, हम इन चरणों का पालन

  1. एक सूची में अधिकतम और न्यूनतम तत्व की स्थिति खोजने के लिए पायथन कार्यक्रम?

    पायथन में अधिकतम, न्यूनतम तत्व और उनकी स्थिति का भी पता लगाना बहुत आसान है। पायथन विभिन्न इनबिल्ट फ़ंक्शन प्रदान करता है। न्यूनतम () का उपयोग किसी सरणी में न्यूनतम मान ज्ञात करने के लिए किया जाता है, अधिकतम () का उपयोग किसी सरणी में अधिकतम मान ज्ञात करने के लिए किया जाता है। अनुक्रमणिका () का उपयोग