力扣动态规划-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;
        }
}

后言

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

相关推荐
七宝大爷几秒前
第一个CUDA程序:从向量加法开始
android·java·开发语言
__万波__1 分钟前
二十三种设计模式(十一)--享元模式
java·设计模式·享元模式
有什么东东1 分钟前
redis实现店铺类型查看
java·开发语言·redis
hellotutu1 分钟前
IntelliJ IDEA 中引入自定义 JAR 包
java·bash·intellij-idea·jar
青铜发条6 分钟前
【算法】常见校验算法对比
算法·信息与通信·校验
budingxiaomoli7 分钟前
初始网络原理
java·运维·服务器·网络
自己的九又四分之三站台8 分钟前
Maven的安装使用
java·maven
LinHenrY12278 分钟前
初识C语言(数据在内存中的存储)
c语言·开发语言·算法
R-G-B11 分钟前
BM53 缺失的第一个正整数,哈希表,原地哈希(扩展思路)
算法·哈希算法·哈希表·原地哈希