其他分享
首页 > 其他分享> > 【LeetCode每日一题】——11.盛水最多的容器

【LeetCode每日一题】——11.盛水最多的容器

作者:互联网

文章目录

一【题目类别】

二【题目难度】

三【题目编号】

四【题目描述】

五【题目示例】

六【题目提示】

七【解题思路】

八【时间频度】

九【代码实现】

  1. Java语言版
package Array;

public class p11_ContainerWithMostWater {

    public static void main(String[] args) {
        int[] height = {1, 8, 6, 2, 5, 4, 8, 3, 7};
        int res = maxArea(height);
        System.out.println("res = " + res);
    }

    public static int maxArea(int[] height) {
        int leftIndex = 0;
        int rightIndex = height.length - 1;
        int res = 0;
        while (leftIndex < rightIndex) {
            res = height[leftIndex] < height[rightIndex] ? Math.max(res, (rightIndex - leftIndex) * height[leftIndex++]) : Math.max(res, (rightIndex - leftIndex) * height[rightIndex--]);
        }
        return res;
    }

}
  1. C语言版
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int MAX(int x, int y)
{
	if (x > y)
	{
		return x;
	}
	return y;
}

int maxArea(int* height, int heightSize)
{
	int leftIndex = 0;
	int rightIndex = heightSize - 1;
	int res = 0;
	while (leftIndex < rightIndex)
	{
		res = height[leftIndex] < height[rightIndex] ? MAX(res, (rightIndex - leftIndex) * height[leftIndex++]) : MAX(res, (rightIndex - leftIndex) * height[rightIndex--]);
	}
	return res;
}

/*ʡ*/

十【提交结果】

  1. Java语言版
    在这里插入图片描述
  2. C语言版
    在这里插入图片描述

标签:11,leftIndex,盛水,int,res,height,rightIndex,题目,LeetCode
来源: https://blog.csdn.net/IronmanJay/article/details/116352861