[LeetCode] 011. Container With Most Water (Medium) (C++/Java

索引:[LeetCode] Leetcode 题解索引 (C++/Java/Python/Sql)Github: https://github.com/illuz/leetcode

011.Container_With_Most_Water (Medium)链接:

题目:https://oj.leetcode.com/problems/container-with-most-water/代码(github):https://github.com/illuz/leetcode

题意:

给一些挡板,选两个挡板,求最大蓄水容量。

分析:

可以看看这个大神的详细算法,,给跪…

这里只用了第二种算法。

代码:C++:

class Solution {public:int maxArea(vector<int> &height) {int lpoint = 0, rpoint = height.size() – 1;int area = 0;while (lpoint < rpoint) {area = max(area, min(height[lpoint], height[rpoint]) *(rpoint – lpoint));if (height[lpoint] > height[rpoint])rpoint–;elselpoint++;}return area;}};

Java:

public class Solution {public int maxArea(int[] height) {int lpoint = 0, rpoint = height.length – 1;int area = 0;while (lpoint < rpoint) {area = Math.max(area, Math.min(height[lpoint], height[rpoint]) *(rpoint – lpoint));if (height[lpoint] > height[rpoint])rpoint–;elselpoint++;}return area;}}

Python:

class Solution:# @return an integerdef maxArea(self, height):lp, rp = 0, len(height) – 1area = 0while lp < rp:area = max(area, min(height[lp], height[rp]) * (rp – lp))if height[lp] > height[rp]:rp -= 1else:lp += 1return area

因为在路上你就已经收获了自由自在的好心情。

[LeetCode] 011. Container With Most Water (Medium) (C++/Java

相关文章:

你感兴趣的文章:

标签云: