665. Non-decreasing Array
来源:互联网 发布:java http get post 编辑:程序博客网 时间:2024/05/14 05:42
题目:
Given an array with n
integers, your task is to check if it could become non-decreasing by modifying at most 1
element.
We define an array is non-decreasing if array[i] <= array[i + 1]
holds for every i
(1 <= i < n).
Example 1:
Input: [4,2,3]Output: TrueExplanation: You could modify the first 4
to 1
to get a non-decreasing array.
Example 2:
Input: [4,2,1]Output: FalseExplanation: You can't get a non-decreasing array by modify at most one element.
Note: The n
belongs to [1, 10,000].
思路:
本题思路如下:
step1:复制数组nums得nums_c
step2:遍历数组,当当前值小于前一个值时,对两个数组做删除操作,nums删除当前值,nums_c删除前面一个值
step3:分别遍历上述两个数组,当两个数组只要有一个符合非递减返回真,否则返回假
代码:
class Solution {public: bool checkPossibility(vector<int>& nums) { vector<int> nums_c = nums; int flag = 0,flag_c=0; for(int i=1;i<nums.size();i++) { if(nums[i]<nums[i-1]) { nums.erase(nums.begin()+i-1); nums_c.erase(nums_c.begin()+i); break; } } if(count==1) { for(int j=1;j<nums.size();j++) { if(nums[j]<nums[j-1]) { flag=1; break; } } for(int j=1;j<nums.size();j++) { if(nums_c[j]<nums_c[j-1]) { flag_c =1; break; } } } if(!flag||!flag_c) return true; else return false; }};
阅读全文
1 0
- 665. Non-decreasing Array
- 665. Non-decreasing Array
- 665. Non-decreasing Array
- 665. Non-decreasing Array
- 665. Non-decreasing Array
- 665. Non-decreasing Array
- 665. Non-decreasing Array
- 665. Non-decreasing Array
- LeetCode 665. Non-decreasing Array
- 665. Non-decreasing Array(C++)
- leetcode 665. Non-decreasing Array
- leetcode 665. Non-decreasing Array
- leetcode 665. Non-decreasing Array
- leetcode 665. Non-decreasing Array
- LeetCode——665. Non-decreasing Array
- [LeetCode]665.Non-decreasing Array ❤
- Non-decreasing Array
- LeetCode Non-decreasing Array
- 解决myeclipse自带maven下载中央仓库插件报403错误的问题(8.6版本不报403)
- Python:reduce在python高级版本中没有的原因
- Vue用v-bind给标签属性赋值 src, href...
- Nginx 日志配置(一)
- Bootstrap组件学习笔记(六)——进度条和媒体对象
- 665. Non-decreasing Array
- HornetQ学习系列(1)
- 磷酸铁锂电池使用常规数据
- unity烘培贴图黑斑问题
- 内部类与匿名内部类区别
- 一个故事告诉你比特币的原理及运作机制
- c++ sort 类的一点区别
- 传值与传址的区别
- AngularJS +Ionic 移动端开发 三