665. Non-decreasing Array

xiaoxiao2021-02-28  159

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: True Explanation: You could modify the first 4 to 1 to get a non-decreasing array.

Example 2:

Input: [4,2,1] Output: False Explanation: You can't get a non-decreasing array by modify at most one element.

Note: The n belongs to [1, 10,000].

class Solution { public boolean checkPossibility(int[] nums) { int pre = nums[0]; boolean flag = false; for (int i = 1; i < nums.length; ++i) { if (nums[i] < pre) { if (flag) return false; else { flag = true; if (i == 1 || nums[i] >= nums[i - 2]) pre = nums[i]; } } else pre = nums[i]; } return true; } }

转载请注明原文地址: https://www.6miu.com/read-17969.html

最新回复(0)