二值有序
November 22, 2024Less than 1 minute
二值有序
每一个元素在目标函数上都只有两种取值,然后可以唯一对应到两种操作,可以避免走回头路,可以做到:
- 将On2的问题优化到On
- 双指针本来为组合问题,复杂度应为On2
- 将On的问题优化到Ologn
特殊有序
二分答案
- 线性扫描
- 逆向双针
- 滑动窗口
- Z型遍历
- 动态规划
滑动窗口
有序数组
去重:
if (j < n - 1 && nums[j] == nums[j + 1]) {
// 跳过所有与i重的元素
// 保留最后一个,在双指针的时候可以枚举到唯一一对相同值的数对
continue;
}
if (i > 0 && nums[i] == nums[i - 1]) {
// 跳过所有与i重的元素
// 保留第一个,这种写法就是组合II那种去重思路
continue;
}