https://leetcode.com/problems/monotonic-array/
给定一个数组,判断其是否单调(不一定要严格)。
可以用两个变量分别存储数组是否单调增或单调降,最后取或即可。代码如下:
public class Solution { public boolean isMonotonic(int[] A) { if (A == null || A.length <= 2) { return true; } boolean incr = true, decr = true; for (int i = 0; i < A.length - 1; i++) { // 如果发现不满足单调增或者单调减,则改变变量值 if (A[i] > A[i + 1]) { incr = false; } if (A[i] < A[i + 1]) { decr = false; } } return incr || decr; }}时间复杂度 O ( n ) O(n) O(n),空间 O ( 1 ) O(1) O(1)。