मान लीजिए कि हमारे पास n पूर्णांकों के साथ एक सरणी है, हमारा कार्य यह जांचना है कि क्या यह अधिकतम एक तत्व को संशोधित करके गैर-घटित हो सकता है। हम परिभाषित कर सकते हैं कि एक सरणी गैर-घटती है यदि यह इस नियम को संतुष्ट करती है:सरणी [i] <=सरणी [i + 1] प्रत्येक i (1 <=i
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
अगर arr में 2 या उससे कम एलिमेंट हैं, तो रिटर्न ट्यूर
उत्तर :=असत्य
मैं के लिए 0 श्रेणी में गिरफ्तारी में तत्वों की संख्या - 2
अगर गिरफ्तारी [i]> गिरफ्तारी [i + 1]
यदि उत्तर 0 नहीं है, तो झूठी वापसी करें, अन्यथा उत्तर:=सत्य
अगर मैं> 0
अगर गिरफ्तारी [i - 1]> गिरफ्तारी [i + 1], तो गिरफ्तारी [i + 1]:=गिरफ्तारी [i]
सही लौटें
आइए एक बेहतर समझ प्राप्त करने के लिए निम्नलिखित कार्यान्वयन देखें -
उदाहरण (पायथन)
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