单调数列
class Solution {
public:
bool isMonotonic(vector<int>& nums) {
return is_sorted(nums.begin(), nums.end()) || is_sorted(nums.rbegin(), nums.rend());
}
};
计算机的思路
class Solution {
public:
bool isMonotonic(vector<int>& nums) {
bool inc = true, dec = true;
int n = nums.size();
for (int i = 0; i < n - 1; ++i) {
if (nums[i] > nums[i + 1]) {
inc = false;
}
if (nums[i] < nums[i + 1]) {
dec = false;
}
}
return inc || dec;
}
};
自己的思路
class Solution {
public:
bool isMonotonic(vector<int>& nums) {
int n=nums.size();
if(nums[n-1]==nums[0]){
for(int x :nums){
if(x!=nums[0]) return false;
}
return true;
}
else if(nums[n-1]-nums[0]>0){
for(int i=1;i<n;i++){
if(nums[i]<nums[i-1]) return false;
}
return true;
}
else{
for(int i=1;i<n;i++){
if(nums[i]>nums[i-1]) return false;
}
return true;
}
}
};
要改变思路!!