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

पायथन में नॉन-डिक्रीजिंग ऐरे


मान लीजिए हमारे पास n इंटीजर्स का एक ऐरे है, हमें यह जांचना है कि क्या यह अधिकतम एक एलिमेंट को मॉडिफाई करके नॉन-डिक्रीजिंग बन सकता है। हम एक ऐरे को नॉन-डिक्रीजिंग परिभाषित करते हैं यदि यह इस नियम को संतुष्ट करता है: array[i] <= array[i + 1] प्रत्येक i (1 <= i < n) के लिए। इसलिए यदि ऐरे [4,2,3] है, तो उत्तर true होगा। हम इसे नॉन-डिक्रीजिंग ऐरे में बदल सकते हैं यदि हम 4 को 1 बना दें, तब ऐरे [1,2,3] बन जाएगा।

समाधान के चरण

  • यदि ऐरे में 2 या उससे कम एलिमेंट्स हैं, तो true लौटाएं
  • ans := False
  • for i in range 0 से ऐरे की लंबाई - 2 तक
    • यदि arr[i] > arr[i + 1]
      • यदि ans नॉन-ज़ीरो है, तो false लौटाएं, अन्यथा ans := True
      • यदि i > 0
        • यदि arr[i - 1] > arr[i + 1], तो arr[i + 1] := arr[i]
  • true लौटाएं

उदाहरण (पायथन)

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

class Solution(object):
    def checkPossibility(self, nums):
        if len(nums) <= 2:
            return True
        ans = False
        for i in range(len(nums)-1):
            if nums[i] > nums[i+1]:
                if ans:
                    return False
                else:
                    ans = True
                if i > 0:
                    if nums[i-1] > nums[i+1]:
                        nums[i+1] = nums[i]
        return True

ob1 = Solution()
print(ob1.checkPossibility([4,2,3,5]))

इनपुट

[4,2,3,5]

आउटपुट

True

  1. - पायथन में क्रमबद्ध सरणी मर्ज करें

    मान लीजिए हमारे पास दो क्रमबद्ध सरणी A और B हैं। हमें उन्हें मर्ज करना है और केवल एक क्रमबद्ध सरणी C बनाना है। सूचियों का आकार भिन्न हो सकता है। उदाहरण के लिए, मान लीजिए A = [1,2,4,7] और B = [1,3,4,5,6,8], तो मर्ज की गई सूची C [1,1,2,3,4,4,5,6,7,8] होगी। हल करने के चरण i := 0, j := 0 और end := A क

  1. - पायथन में bool() फ़ंक्शन

    पायथन में bool() फ़ंक्शन उसे सप्लाई किए गए पैरामीटर का बूलियन मान लौटाता है। पैरामीटर निम्नलिखित में से कोई भी हो सकता है और परिणाम नीचे दी गई शर्तों के अनुसार होते हैं। यहाँ उल्लिखित मानों को छोड़कर शेष मान True लौटाते हैं। False तब लौटाया जाता है जब पास किया गया पैरामीटर मान निम्न हो: None एक F

  1. - पायथन में id() फ़ंक्शन

    इस लेख में, हम पायथन 3.x (या पूर्व संस्करणों) में id() फ़ंक्शन के उपयोग और कार्यान्वयन के बारे में सीखेंगे। यह पायथन स्टैंडर्ड लाइब्रेरी में मौजूद है और कोड निष्पादित होने से पहले स्वचालित रूप से आयात किया जाता है। सिंटैक्स: id() वापसी मान: प्रकार का पहचान मान फ़ंक्शन ठीक एक तर्क स्वीकार करता ह