讨论社区

柱状图中最大的矩形运行没问题,提交报错

84题:柱状图中最大的矩形

class Solution {

    public int largestRectangleArea(int[] heights) {

        Set<Integer> set = new TreeSet<>(Comparator.reverseOrder());

        for (int i=0;i<heights.length-1;i++){

            if (heights[i] > heights[i+1]){

                set.add(heights[i+1]);

            }else{

                set.add(heights[i]);

            }

        }

        return set.iterator().next() * 2;

    }

}

执行代码没问题,但是提交就报错,错误原因是set集合为空,莫名其妙??

0 人关注了该问题 关注

0

刘岳 • 6天前

题目中没说height数组长度一定不小于2

在你的代码前面加上:

if (heights.length == 0) {
    return 0;
}        
if (heights.length == 1) {
    return heights[0];
}

而且你的解法也不对,请再思考一下。

0 个讨论

您需要登录后才可回复
您需要登录后才可以回复