解题思路:
双指针
提交代码:
class Solution {
public int trap(int[] height) {
int left=0,right=height.length-1,min,sum=0;
while(left<right) {
min=height[left]<height[right]?height[left]:height[right];
if(height[left]<height[right]) {
left++;
while(left<right&&height[left]<min)
sum+=min-height[left++];
}
else {
right--;
while(left<right&&height[right]<min)
sum+=min-height[right--];
}
}
return sum;
}
}
运行结果: