盛最多水的容器算法证明过程(LeetCode11)

题目:给定 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (iai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (iai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。

算法:定义两个指针i,j(其初始位置i在头,j在尾)if(ai>aj) j--;else i++.最大的面积总是在i j之间。

证明:(感觉编公式好累,手写了)

猜你喜欢

转载自blog.csdn.net/gw_9527/article/details/89739550