1、题目
如果数组是单调递增或单调递减的,那么它是单调的。
如果对于所有 i <= j
,A[i] <= A[j]
,那么数组 A
是单调递增的。 如果对于所有 i <= j
,A[i]> = A[j]
,那么数组 A
是单调递减的。
当给定的数组 A
是单调数组时返回 true
,否则返回 false
。
示例 1:
输入:[1,2,2,3] 输出:true
示例 2:
输入:[6,5,4,4] 输出:true
示例 3:
输入:[1,3,2] 输出:false
示例 4:
输入:[1,2,4,5] 输出:true
示例 5:
输入:[1,1,1] 输出:true
二、代码:
Speed = O(n)
Memory = O(1)
def isMonotonic(self, A): """ :type A: List[int] :rtype: bool """ is_monotonic_asc = True; is_monotonic_desc = True; for i in range(1, len(A)): if A[i] < A[i - 1]: is_monotonic_asc = False; if A[i] > A[i - 1]: is_monotonic_desc = False; return is_monotonic_asc or is_monotonic_desc;