Non-decreasing Array
给一个数组, 求能不能只改变一个元素, 使得数组变成非递减数组.
主要是很多corner cases. 考虑到了就可以
class Solution {
public boolean checkPossibility(int[] nums) {
for(int i = 1; i < nums.length; i++) {
if(nums[i - 1] > nums[i]){
if(i + 1 < nums.length) {
if(nums[i - 1] > nums[i + 1])
nums[i - 1] = nums[i];
else{
nums[i] = nums[i + 1];
}
}
else{
nums[i] = nums[i - 1];
}
break;
}
}
for(int i = 1; i < nums.length; i++) {
if(nums[i - 1] > nums[i]){
return false;
}
}
return true;
}
}