力扣刷題記錄 陣列 簡單 896單調數列

2021-09-26 00:18:00 字數 976 閱讀 7504

如果陣列是單調遞增或單調遞減的,那麼它是單調的。

如果對於所有 i <= j,a[i] <= a[j],那麼陣列 a 是單調遞增的。 如果對於所有 i <= j,a[i]> = a[j],那麼陣列 a 是單調遞減的。

當給定的陣列 a 是單調陣列時返回 true,否則返回 false。

class

solution

(object)

: def ismonotonic

(self,a)

:"""

:type a

: list[int]

:rtype: bool

"""length =

len(a)

if length<=2:

return true

# flag 用於記錄是遞增還是遞減

# 前面幾個數都相等時,無法判斷

# 一旦能確定大小關係,就停止迴圈

for i in

range(1

,length):if

a[i-1]

>

a[i]

: flag =

1breakifa

[i-1

]<

a[i]

: flag =

0break

# 前i個數都已經判斷過是遞增還是遞減的了,從第i+

1個開始判斷

for j in

range

(i+1

,length)

:if flag==1:

ifa[j-1

]<

a[j]

:return false

else:if

a[j-1]

>

a[j]

:return false

return true

力扣刷題記錄05

題目分類 二分查詢 時間 2020 09 09 題目一 兩數之和 兩數之和 ii 輸入有序陣列 給定乙個已按照公升序排列 的有序陣列,找到兩個數使得它們相加之和等於目標數。函式應該返回這兩個下標值 index1 和 index2,其中 index1 必須小於 index2。說明 返回的下標值 ind...

力扣刷題記錄2

第一題是每日一題的簡單題。需要記的並不多,一是用迭代器對vector的一些基本操作。可以參考這裡 for vector iterator iter num.begin iter num.end iter 另外是快排的思想。這種思想實用性很廣,即使不需要排序,在找出最大的k個數,對陣列進行分割 以中間...

力扣刷題記錄10

三角形的最大周長 看到這個題目,我想到了排序後從最大的中挑選,但遇到了點困難,一方面是無法記錄哪個是最大的點,這樣每次都要判斷。另一方面是根據題目要求,每個數只能用一次,要記錄下當前哪些是已經被使用了的。看到題解之後感覺自己是個智障。class solution return0 下次貪心時候也要動動...