其他分享
首页 > 其他分享> > 896. Monotonic Array

896. Monotonic Array

作者:互联网

My solution:

class Solution {
    public boolean isMonotonic(int[] nums) {
        if(nums==null||nums.length<3){
            return true;
        }
        int first = nums[0];
        int second = nums[nums.length-1];
        if(first<second){
            return checkMonotonic(nums, true);
        }else{
            return checkMonotonic(nums, false);
        }
    }
    private boolean checkMonotonic(int[] nums, boolean increase){
        if(increase){
            for(int i=0;i<nums.length-1;i++){
                if(nums[i]>nums[i+1]){
                    return false;
                }
            }
        }else{
            for(int i=0;i<nums.length-1;i++){
                if(nums[i]<nums[i+1]){
                    return false;
                }
            }
        }
        return true;
    }
}

A simple solution:

class Solution {
    public boolean isMonotonic(int[] nums) {
        if(nums==null||nums.length<3){
            return true;
        }
        int inc=0, dec=0;
        for(int i=0;i<nums.length-1;i++){
            if(nums[i]<nums[i+1])
                inc++;
            else if(nums[i]>nums[i+1])
                dec++;
            else{
                inc++;
                dec++;
            }
        }
        return inc==nums.length-1 || dec==nums.length-1;
    }
}

 

标签:896,nums,int,Monotonic,c++,boolean,Array,null,public
来源: https://www.cnblogs.com/feiflytech/p/16172528.html