本文主要是介绍盛最多水的容器——双指针,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
. - 力扣(LeetCode)
双指针理解:
以整体和局部的角度考虑:
如果Left比Right矮,那么Left所有可能能组成的最大值此时就已经确定了,无论中间是否有比Right还要高的数;先记为Lmax
那么最终答案即为max(Lmax, Right与剩余的数的最优解)
继续分析如下图:
再去新的Left,与上一步的Right,以此类推..
即可获取最终答案
为什么没有遗漏?
因为每次移动矮的那个前,矮的那个最大值已经确定,未确定的是高的那个与剩余匹配的最大值。
这篇关于盛最多水的容器——双指针的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!