> Problem: [1732. 找到最高海拔]
[TOC]
# 思路
> 仔细看题,就能明白,当前的值加上前一个的值赋给当前的值,全都如此,求最大的那个值。
# 解题方法
> 最笨的方法,就是前缀和,前缀和是这个题解题的关键,可能有些人想出来的这个思路。前缀和是啥:
1 2 3 4 5 6 7
若求前缀和
则第一位不变,第二位+第一位就是第二位前缀和的值,第三位理应如此:
1 3 6 10 15 21 28
给的实例
输入:gain = [-5,1,5,0,-7]
输出:1
解释:海拔高度依次为 [-5,-4,1,1,-6] 。最高海拔为 1 。
# 复杂度
- 时间复杂度:
> 添加时间复杂度, 示例: $O(n)$
- 空间复杂度:
> 添加空间复杂度, 示例: $O(n)$
# Code
```Java []
class Solution {
public int largestAltitude(int[] gain) {
int max = 0;
int pre = 0;
for(int i = 0;i < gain.length;i++){
pre += gain[i];
max = Math.max(max,pre);
}
return max;
}
}
```