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

पाइथन में मैक्स हीप है?

मान लीजिए कि हमारे पास संख्याओं की एक सूची है जिसे अंक कहा जाता है, हमें यह जांचना होगा कि क्या यह मैक्सहेप का प्रतिनिधित्व करता है। हम इन नियमों का पालन करेंगे -

  • nums[i] =nums[2*i + 1] जब 2*i + 1 सीमा के अंदर हो
  • nums[i] =nums[2*i + 2] जब 2*i + 2 रेंज के अंदर हो

तो, अगर इनपुट [5, 3, 4, 1, 2] जैसा है, तो आउटपुट ट्रू होगा

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

  • मैं के लिए 0 से (अंकों का आकार)/2 की सीमा में, करते हैं
    • अगर nums[i]>=nums[2*i+1] सही नहीं है, तो
      • झूठी वापसी
    • यदि i*2+2 <=(अंकों का आकार) -1, तो
      • अगर nums[i]>=nums[2*i+2] सही नहीं है, तो
        • झूठी वापसी
  • सही लौटें

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

उदाहरण

class Solution:
   def solve(self, nums):
      for i in range(len(nums)//2):
         if not nums[i] >= nums[2*i+1]:
            return False
         if i*2+2 <= len(nums)-1:
            if not nums[i] >= nums[2*i+2]:
               return False
      return True
ob = Solution()
nums = [5, 3, 4, 1, 2]
print(ob.solve(nums))

इनपुट

[5, 3, 4, 1, 2]

आउटपुट

True

  1. ढेर की जाँच करने का कार्यक्रम पायथन में अधिकतम ढेर बना रहा है या नहीं

    मान लीजिए कि हमारे पास ढेर के पेड़ का प्रतिनिधित्व करने वाली एक सूची है। जैसा कि हम जानते हैं कि हीप एक पूर्ण बाइनरी ट्री है। हमें यह जांचना है कि तत्व अधिकतम ढेर बना रहे हैं या नहीं। जैसा कि हम जानते हैं कि अधिकतम ढेर के लिए प्रत्येक तत्व अपने दोनों बच्चों से बड़ा होता है। इसलिए, यदि इनपुट nums =[

  1. हीप सॉर्ट के लिए पायथन प्रोग्राम

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक सरणी दी गई है, हमें इसे हेपसॉर्ट की अवधारणा का उपयोग करके क्रमबद्ध करने की आवश्यकता है। यहां हम अधिकतम तत्व को अंत में रखते हैं। यह तब तक दोहराया जाता है जब तक कि सरणी क्रमबद्ध न हो जाए। आइए अब नीचे दिए गए

  1. पायथन इटरेटर प्रकार

    पायथन में कंटेनरों पर पुनरावृत्ति अवधारणाएं हैं। Iterators के दो अलग-अलग कार्य हैं। इन कार्यों का उपयोग करके, हम पुनरावृत्ति का समर्थन करने के लिए उपयोगकर्ता परिभाषित कक्षाओं का उपयोग कर सकते हैं। ये कार्य हैं __iter__() और __next__() । विधि __iter__() __iter__() विधि पुनरावर्तक वस्तु लौटाती है। य