题目
如果数组是单调递增或单调递减的,那么它是单调的。
当给定的数组 A 是单调数组时返回 true,否则返回 false。
示例1
- 输入:[1,2,2,3]
- 输出:true
示例2
- 输入:[1,1,1]
- 输出:true
示例3
- 输入:[1,3,2]
- 输出:false
提示
- 1 <= A.length <= 50000
- -100000 <= A[i] <= 100000
题解
题目言简意赅,就是判断数组是否为单调的,那么,首先我们要了解什么为单调。
如果对于所有 i <= j,A[i] <= A[j],那么数组 A 是单调递增的。 如果对于所有 i <= j,A[i]> = A[j],那么数组 A 是单调递减的。
由此可以得出,只要遍历数组A,如果过程中既出现A[i] < A[i+1],又出现A[i] > A[i+1],则可得出结论数组A不是单调数组。反之数组A是单调数组
AC代码
var isMonotonic = function(A) {
let inc = true, dec = true;
const n = A.length;
for (let i = 0; i < n - 1; ++i) {
if (A[i] > A[i + 1]) {
inc = false;
}
if (A[i] < A[i + 1]) {
dec = false;
}
}
return inc || dec;
};
就分享到这啦!咱们下个题目见~
记得不断进步哦~
本文正在参与「掘金 2021 春招闯关活动」, 点击查看 活动详情:juejin.cn/post/693314…