1. 程式人生 > >896. 單調數列

896. 單調數列

continue 如果 solution else 那種 als 求解 col 判斷

如果數組是單調遞增或單調遞減的,那麽它是單調的

如果對於所有 i <= jA[i] <= A[j],那麽數組 A 是單調遞增的。 如果對於所有 i <= jA[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

提示:

  1. 1 <= A.length <= 50000
  2. -100000 <= A[i] <= 100000

思路:通過頭尾元素判定是哪種單調數列,然後遍歷求解,比較簡單,目前beat 99%

class Solution {
    public boolean isMonotonic(int[] A) {
        int i=0,j=A.length-1;
        int flag = (A[A.length-1]>=A[0]) ? 1 : 0;   //判斷屬於那種數列 1表示單調遞增  0表示單調遞減
        if(flag==1){
        for(;i<j;--j,++i){
            
if((A[i+1]>=A[i] && A[j]>=A[j-1]) ) continue; else return false; } } else { for(;i<j;--j,++i){ if((A[i+1]<=A[i] && A[j]<=A[j-1]) ) continue; else return false; } } return true; } }

896. 單調數列