字节校招 2面

原题链接:
https://leetcode.cn/problems/maximum-subarray/

原题链接:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

// f[i]表示以i结尾的 前i个 数组中 最长子序列和
class Solution {
public int maxSubArray(int[] nums) {
int n = nums.length;
int [] f = new int [n + 1];
int ans = Integer.MIN_VALUE;
for(int i = 1 ; i <= n ; i++){
f[i] = Math.max(nums[i - 1],f[i - 1] + nums[i - 1]);
ans = Math.max(f[i],ans);
}

return ans;
}
}