leetcode hot 14
1.leetcode hot 012.leetcode hot 023.leetcode hot 044.leetcode hot 035.leetcode hot 056.leetcode hot 067.leetcode hot 078.leetcode hot 089.leetcode hot 0910.leetcode hot 1011.leetcode hot 1212.leetcode hot 13
13.leetcode hot 14
14.leetcode hot 1515.leetcode hot 1116.leetcode hot 1617.leetcode hot 1718.leetcode hot 1819.leetcode hot 1920.leetcode hot 2021.leetcode hot 2122.leetcode hot 2223.leetcode hot 2324.leetcode hot 2425.leetcode hot 25解题思路:这题思路有很多,动态规划,前缀和等,前缀和就是遍历一遍,将每个前缀和与前面最小的前缀和相减,就能得到最大值,然后比较与记录最大值。(还有一种思路就是首先明确最大子串内部一定不会存在某个边缘子串小于0,所以可以遍历一遍先记录继续记录前缀和,然后比较max,当某一个元素进入后前缀和小于0,说明这个之前的这个子串不可能在最大子串中,或者前面已经存在最大子串,前缀和的值清0,从下一个元素继续计算,然后比较)
class Solution {
public int maxSubArray(int[] nums) {
int min = 0;
int max = Integer.MIN_VALUE;
int sum = 0;
for(int num:nums){
sum+=num;
max = Math.max(sum-min,max);
min = Math.min(min,sum);
}
return max;
}
}
class Solution(object):
def maxSubArray(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
res = -10**4
ans = 0
for i in range(len(nums)):
ans += nums[i]
if ans>res:
res = ans
if ans<0:
ans = 0
return res
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~