力扣动态规划-12【算法学习day.106】

前言

###我做这类文章一个重要的目的还是给正在学习的大家提供方向(例如想要掌握基础用法,该刷哪些题?建议灵神的题单和代码随想录)和记录自己的学习过程,我的解析也不会做的非常详细,只会提供思路和一些关键点,力扣上的大佬们的题解质量是非常非常高滴!!!


习题

1.乘积最大子数组

题目链接: 152. 乘积最大子数组 - 力扣(LeetCode)

题面:

代码:

java 复制代码
class Solution {
    public int maxProduct(int[] nums) {
        int n = nums.length;
        int[] flag1 = new int[n];
        int[] flag2 = new int[n];
        flag1[0] = nums[0];
        flag2[0] = nums[0];
        int max = nums[0];
        for(int i = 1;i<n;i++){
            flag1[i] = Math.max(Math.max(flag1[i-1]*nums[i],flag2[i-1]*nums[i]),nums[i]);
            flag2[i] = Math.min(Math.min(flag1[i-1]*nums[i],flag2[i-1]*nums[i]),nums[i]);
            if(flag1[i]>max)max = flag1[i];
        }
        return max;
        }
}

后言

上面是动态规划相关的习题,共勉

相关推荐
yaoxin52112312 分钟前
279. Java Stream API - Stream 拼接的两种方式:concat() vs flatMap()
java·开发语言
前端小L13 分钟前
贪心算法专题(十三):画地为牢的艺术——「划分字母区间」
javascript·算法·贪心算法
@小码农14 分钟前
202512 电子学会 Scratch图形化编程等级考试三级真题(附答案)
服务器·开发语言·数据结构·数据库·算法
坚持学习前端日记28 分钟前
2025年的个人和学习年度总结以及未来期望
java·学习·程序人生·职场和发展·创业创新
Cosmoshhhyyy29 分钟前
《Effective Java》解读第29条:优先考虑泛型
java·开发语言
橘颂TA33 分钟前
【剑斩OFFER】算法的暴力美学——重排链表
算法·结构与算法
Chen不旧42 分钟前
java基于reentrantlock/condition/queue实现阻塞队列
java·开发语言·signal·reentrantlock·await·condition
zl_vslam43 分钟前
SLAM中的非线性优-3D图优化之相对位姿Between Factor位姿图优化(十三)
人工智能·算法·计算机视觉·3d
Timmylyx05181 小时前
CF 新年赛 Goodbye 2025 题解
算法·codeforces·比赛日记
闻缺陷则喜何志丹1 小时前
【二分查找】P10091 [ROIR 2022 Day 2] 分数排序|普及+
c++·算法·二分查找