775. 全局倒置与局部倒置
暴力法+维护最小值+数学法=循序渐进
暴力法
看到题目,没有任何技巧,直接暴力!🐶 :dog:
1 |
|
维护最小值法
稍微分析一下,我们在 i
位置上,只要找到从 i+2
往后的值中有小于 i
位上的值即可;那么只需要从 i+2
往后的值中最小的值与 nums[i]
比较即可!
可以从后往前遍历,有利于保存后缀最小值。
1 |
|
数学证明
接着分析:
- 在
i=0
的位置上,只要其大于等于2
,那就一定能在i=2
及往后的位置中找到小于i
的值。 - 在
i=1
的位置上,只要其大于等于3
,那就一定能在i=3
及往后的位置中找到小于i
的值。 - 以此类推,可以看到,只要保证
nums[i] <= i+2
即可!
1 |
|
来源:Hexo
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 许可协议。著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。