这个我是用双指针指向数组数组元素,把指针距离x较小的元素得到面积are
但问题是我在一个while循环里使用了两次同样判断条件的if判断,但又不能放一起。
有没有什么办法能优化一下这两个if.
int maxArea(int* height, int heightSize){
int indexleft=0;
int indexright=heightSize-1;
int Are=0;
int high;
int tmp;
while(indexleft<indexright)
{
if(height[indexright]<height[indexleft])
high=height[indexright];
else
high=height[indexleft];
tmp=high*(indexright-indexleft);
if(tmp>Are)
Are=tmp;
if(height[indexright]<height[indexleft])
indexright--;
else
indexleft++;
}
return Are;
}
ps:这个代码是能通过力扣测试的,还有就是学c没多久,可能基础不太好,所以在这提问.