当前位置: 首页 > news >正文

刷leetcode hot100--动态规划3.11

第一题:最长递增子序列[10:53]

1.dp数组及下标含义:dp[n]:nums[0...n]的最长严格递增子序列长度【无法进行后续比较】

dp[n]以nums[n]结尾的最长严格递增子序列对应的长度

2.初始化:注意!!这里应该初始化为1,因为每一个字符单独拎出来这个子序列长度就是1!!!

3.递推公式:dp[i] = max(dp[j]+1) 当nums[j]<nums[i](i>j)

4.遍历5.打印数组

注意::实际操作时,case:[0]输出了0,因为maxNum没进循环,所以还是0--->最好对特殊情况if--return提前处理

class Solution {
public:
    int lengthOfLIS(vector<int>& nums) {
        //dp[n]nums[0...n]的最长严格递增子序列长度
        //dp[n]以nums[n]结尾的最长严格递增子序列长度
        //dp[n]=0,
        vector<int> dp(nums.size(),1);//初始化应该是1
        //dp[i] = max(dp[j]+1) 当nums[j]<nums[i]
        if(nums.size()==1){
            return 1;
        }//case:[0]  -->输出0,因为maxNum是0    
        int maxNum = 0;
        for(int i = 1;i<nums.size();i++){
            for(int j = 0;j<i;j++){
                 if(nums[j]<nums[i]){
                    dp[i] = max(dp[j]+1,dp[i]);
                 }
            }
            maxNum = max(maxNum,dp[i]);
        }
        return maxNum;//不应该return dp[nums.size()-1]

        
    }
};

第二题:乘积最大子数组【没思路。。。】

相关文章:

  • 指针的比较
  • MQTT 物联网的首先协议
  • 小程序 wxml 语法 —— 36 wxml 语法 - setData() 修改数据
  • 基于协同过滤算法的音乐推荐系统(源码+部署教程)
  • 【华三(H3C)交换机上修改 NTP 配置】
  • Docker安装Kafka(内含zookeeper)
  • 第二章:盒模型的奥秘
  • 每天一道算法题【蓝桥杯】【使用最小花费爬楼梯】
  • 扩散 Transformer 策略:用于通才视觉-语言-动作学习的规模化扩散 Transformer
  • 51c大模型~合集10
  • 《使用 Python Flask + MySQL + ECharts 构建销售数据看板》实战案例笔记
  • osg安装编译第三方,完整详细过程。 libtiff/tif config.vc.hdoes not exist
  • GStreamer —— 2.17、Windows下Qt加载GStreamer库后运行 - “播放教程 5:色彩平衡“(附:完整源码)
  • 基于Debian12的SVN和Trac自动安装部署脚本
  • upload-labs-master通关攻略(17~19)
  • RSA算法:开启现代密码学的数学之钥
  • SpringMVC中有关请求参数的问题(映射路径,传递不同的参数)
  • 前端小食堂 | Day13 - Vue.js 进阶烹饪术
  • RISC-V特权模式与寄存器
  • 计网面试准备
  • 习近平同俄罗斯总统普京举行会谈
  • 印巴战火LIVE|巴基斯坦多地遭印度导弹袭击,巴总理称“有权作出适当回应”
  • A股三大股指集体高开大涨超1%,券商、房地产涨幅居前
  • 商务部:自5月7日起对原产于印度的进口氯氰菊酯征收反倾销税
  • 今天全国铁路、公路进入返程高峰,这些路段时段通行压力大
  • 工程机械行业景气度持续回升,三大龙头一季度营收、净利双增