LC.P2216[美化数组的最少删除数]

方法一:遍历

1
2
3
4
5
6
7
8
9
class Solution {
public int minDeletion(int[] nums) {
int cnt = 0, n = nums.length;
for (int i = 0; i < n; ++i) {
if ((i - cnt) % 2 == 0 && i + 1 < n && nums[i] == nums[i + 1]) ++cnt;
}
return (n - cnt) % 2 == 0 ? cnt : cnt + 1;
}
}
  • 时间复杂度:$O(n)$
  • 空间复杂度:$O(1)$