Leetcode题解之Container With Most Water

时间:2023-03-08 20:09:54
Leetcode题解之Container With Most Water

1、题目描述

Leetcode题解之Container With Most Water

2、题目分析

首先,这个题可以使用暴力解法,时间复杂度是O(n^2),这个显然是最容易的做法,但是效率不够高,题目提供了一种解法,使用两个指针,一个从头向尾部,另外一个从尾部向头部,每一步寻找最大的面积,然后较小的一边向前移动。

3、代码实现

 int maxArea(vector<int>& height) {

         int max_area = ;
for( vector<int>::iterator pb = height.begin() , pe = height.end() - ; pb < pe ; )
{
max_area = max( max_area ,min(*pb , *pe)*(int)(pe -pb));
if( *pb < *pe)
pb++;
else
pe--;
}
return max_area; }