思路:
设置两个布尔变量 increase、decrease。
当数组中存在 A[i] < A[j]时,increase = true;
当数组中存在 A[i] > A[j]时,decrease = true;
如果A数组是单调数组,则 increase和decrease中只有一个为true,或都不为true(数组中元素都相等)
代码:
时间复杂度O(n),空间复杂度O(1)
class Solution { public boolean isMonotonic(int[] A) { boolean a = false, b = false; for (int i = 0; i < A.length-1; i++) { if (A[i] < A[i+1]) a = true; if (A[i] > A[i+1]) b = true; } if (a == true && b == true) return false; else return true; } }