文章目录
- 一、题目介绍
- 二、解题思路
- 三、解题算法实现
- 四、算法分析
- 4.1 代码逻辑
- 4.2 逆向遍历求MEX的设计精妙之处
- 4.2.1 逆向遍历:解决MEX更新的连续性
- 4.2.2 利用MEX的单调性
- 4.2.3 空间复用与状态压缩
- 4.2.4 与问题特性的完美契合
- 4.2.5 总结:为什么说这个设计“妙”?
- 五、算法复杂度分析
- 5.1 时间复杂度
- 5.2 空间复杂度
- 六、模拟演练
- 6.1 逐步模拟
- 6.2 关键结论
一、题目介绍
本题链接为 小美的数组删除
二、解题思路
由于有两种删除操作,我们需要考虑不同的删除策略以找到最小代价。
可以通过模拟不断删除第一个元素的过程,每次删除后计算当前数组的 MEX 值,然后计算删除剩余数组的总花费。
最后比较所有可能的删除方案,找出最小的花费。
三、解题算法实现
以下是题目所给的 Java 代码实现:
import java.<