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

यह जांचने का कार्यक्रम कि क्या एक मान BST में मौजूद है या नहीं, Python में है

मान लीजिए कि हमारे पास एक बाइनरी सर्च ट्री है और एक अन्य इनपुट जिसे वैल कहा जाता है, हमें यह जांचना होगा कि वैल ट्री में मौजूद है या नहीं।

तो, अगर इनपुट पसंद है

यह जांचने का कार्यक्रम कि क्या एक मान BST में मौजूद है या नहीं, Python में है

वैल =7, तो आउटपुट ट्रू होगा, क्योंकि ट्री में 7 मौजूद है।

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे-

  • फ़ंक्शन को हल करें () परिभाषित करें। यह जड़ लेगा, वैल

  • अगर रूट शून्य है, तो

    • झूठी वापसी

  • यदि रूट का डेटा वैल के समान है, तो

    • सही लौटें

  • यदि रूट का डेटा <वैल, तो

    • वापसी हल (रूट के बाएं, वैल)

  • वापसी हल (रूट का अधिकार, वैल)

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें-

उदाहरण

class TreeNode:
   def __init__(self, data, left = None, right = None):
      self.data = data
      self.left = left
      self.right = right
class Solution:
   def solve(self, root, val):
      if not root:
         return False
      if root.data == val:
         return True
      if root.data > val:
         return self.solve(root.left, val)
      return self.solve(root.right, val)
ob = Solution()
root = TreeNode(5)
root.left = TreeNode(1)
root.right = TreeNode(9) root.right.left = TreeNode(7) root.right.right = TreeNode(10) root.right.left.left = TreeNode(6) root.right.left.right = TreeNode(8) print(ob.solve(root, 7))

इनपुट

root = TreeNode(5)
root.left = TreeNode(1)
root.right = TreeNode(9)
root.right.left = TreeNode(7)
root.right.right = TreeNode(10)
root.right.left.left = TreeNode(6)
root.right.left.right = TreeNode(8)
7

आउटपुट

True

  1. पायथन में बाइनरी ट्री BST है या नहीं, यह जांचने के लिए प्रोग्राम पायथन में बाइनरी ट्री BST है या नहीं, यह जांचने के लिए प्रोग्राम

    मान लीजिए हमारे पास बाइनरी ट्री है; हमें यह जांचना होगा कि यह बाइनरी सर्च ट्री है या नहीं। जैसा कि हम जानते हैं कि बीएसटी में निम्नलिखित गुण होते हैं - इसके बाएँ उपप्रकार के सभी नोड वर्तमान नोड मान से छोटे हैं इसके दाहिने सबट्री के सभी नोड वर्तमान नोड मान से बड़े हैं ये गुण सभी नोड्स के लिए पुनरावर

  1. पायथन में दिया गया ग्राफ द्विदलीय है या नहीं, यह जांचने के लिए कार्यक्रम पायथन में दिया गया ग्राफ द्विदलीय है या नहीं, यह जांचने के लिए कार्यक्रम

    मान लीजिए कि हमारे पास एक अप्रत्यक्ष ग्राफ है, हमें यह जांचना है कि ग्राफ द्विदलीय है या नहीं। जैसा कि हम जानते हैं कि एक ग्राफ द्विदलीय होता है जब हम ग्राफ के नोड्स को दो सेट ए और बी में विभाजित कर सकते हैं जैसे कि ग्राफ के प्रत्येक किनारे {यू, वी} में ए में एक नोड और बी में दूसरा नोड वी होता है।

  1. यह जांचने का कार्यक्रम कि क्या एक मान BST में मौजूद है या नहीं, Python में है यह जांचने का कार्यक्रम कि क्या एक मान BST में मौजूद है या नहीं, Python में है

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