class Solution {
public:
bool isMonotonic(vector<int>& nums) {
bool a=true;
int n=nums.size();
if(n<=2){
return a;
}
else{
for(int k=0;k<n-1;k++){
if(nums[k]!=nums[k+1]){
if(nums[k]<nums[k+1]){
for(int j = k;j<n-1;j++){
if(nums[j]>nums[j+1]){
a=false;
}
}
}
else if(nums[k]>nums[k+1]){
for(int i = k;i<n-1;i++){
if(nums[i]<nums[i+1]){
a=false;
}
}
}
break;
}
}
}
return a;
}
};
记录一下我的错误,都要服了,找了好久都不知道错在哪了,然后发现忘了将nums长度减一了
- 一定要记住看到[i+1]就要注意索引是否在数组长度内
- 然后要注意长度为1和2的数组都为单调的
- 注意前几个元素都相等但后面的不想等也要考虑到