非遞減數列 leetcode665

2021-08-27 05:24:48 字數 745 閱讀 3275

class

solution

(object):

defcheckpossibility

(self,nums):

""" :type nums: list[int]

:rtype: bool

"""#判斷截斷點,對截斷點進行分析

count=0

i=0length=len(nums)

for j in range(length-1):

if nums[j]>nums[j+1]:

count+=1

i=jif count==0:#沒有截斷點

return

true

if count>1:#截斷點大於2

return

false

if count==1:#截斷點為1,例如[1,2,3,9,5,8,12,13],

#9和5之間產生乙個截斷點,

#此時產生以下幾種情況:

#1.截斷點在首位,截斷點在倒數第二位,截斷點產生峰值或谷值,返回true

#2.否則為false

if i==length-2

or i==0

or nums[i]<=nums[i+2] or nums[i-1]<=nums[i+1] :

return

true

else:

return

false

LeetCode 非遞減數列

給定乙個長度為 n 的整數陣列,你的任務是判斷在最多改變 1 個元素的情況下,該陣列能否變成乙個非遞減數列。我們是這樣定義乙個非遞減數列的 對於陣列中所有的 i 1 i n 滿足 array i array i 1 示例 1 輸入 4,2,3 輸出 true 解釋 你可以通過把第乙個4變成1來使得它...

leetcode 非遞減數列

題目 給你乙個長度為 n 的整數陣列,請你判斷在 最多 改變 1 個元素的情況下,該陣列能否變成乙個非遞減數列。我們是這樣定義乙個非遞減數列的 對於陣列中所有的 i 0 i n 2 總滿足 nums i nums i 1 示例 1 輸入 nums 4,2,3 輸出 true 解釋 你可以通過把第乙個...

非遞減數列

非遞減數列 題目給你乙個長度為 n 的整數陣列,請你判斷在 最多 改變 1 個元素的情況下,該陣列能否變成乙個非遞減數列。我們是這樣定義乙個非遞減數列的 對於陣列中所有的 i 0 i n 2 總滿足 nums i nums i 1 示例 1 輸入 nums 4,2,3 輸出 true 解釋 你可以通...