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

建设隔离变压器移动网站广州新冠最新情况

建设隔离变压器移动网站,广州新冠最新情况,吉林做网站优化,网站服务器租赁需要什么手续以最长递增子序列为例 🎯 首先明确目标 以最长上升子序列(LIS)为例,假设输入是: nums : []int{10, 9, 2, 5, 3, 7, 101, 18}我们定义: dp[i]:以 nums[i] 为结尾的最长上升子序列长度目标&…

以最长递增子序列为例

🎯 首先明确目标

最长上升子序列(LIS)为例,假设输入是:

nums := []int{10, 9, 2, 5, 3, 7, 101, 18}

我们定义:

dp[i]:以 nums[i] 为结尾的最长上升子序列长度

目标:求 dp[i] 的最大值。


🔍 双重 for 的意义是什么?

for i := 1; i < n; i++ {for j := 0; j < i; j++ {if nums[j] < nums[i] {dp[i] = max(dp[i], dp[j] + 1)}}
}

这里我们来解释:

✅ 第一层循环:从左到右遍历每一个位置 i

我们要计算:以 nums[i] 结尾的“最长上升子序列”是多少?

✅ 第二层循环:查看所有在 i 之前的数 j

对于每一个前面的数 nums[j],判断:

它是否可以作为 nums[i] 的前一个元素?
也就是判断 nums[j] < nums[i]

如果是,就说明:

如果我以 j 为结尾的子序列有长度 dp[j]
那么我在它后面加上 nums[i],就可以构成一个更长的上升序列,长度是 dp[j] + 1

于是我们尝试更新 dp[i]

dp[i] = max(dp[i], dp[j] + 1)

🔁 用人话解释一遍:

“我想知道 nums[i] 能不能接在某个前面的上升序列后面,
如果能,那我就更新一下它作为结尾时,能组成多长的子序列。”


🧠 一个具体例子(带注释)

nums := []int{10, 9, 2, 5, 3, 7}初始化 dp := []int{1, 1, 1, 1, 1, 1}  // 每个位置起码是自己i = 3, nums[3] = 5j = 0, nums[0] = 10 -> 跳过j = 1, nums[1] = 9 -> 跳过j = 2, nums[2] = 2 -> 2 < 5 -> 更新 dp[3] = max(1, dp[2] + 1) = 2i = 4, nums[4] = 3j = 0 -> 10 > 3 -> 跳过j = 1 -> 9 > 3 -> 跳过j = 2 -> 2 < 3 -> dp[4] = max(1, dp[2]+1) = 2j = 3 -> 5 > 3 -> 跳过i = 5, nums[5] = 7j = 0 -> 10 > 7 -> 跳过j = 1 -> 9 > 7 -> 跳过j = 2 -> 2 < 7 -> dp[5] = max(1, 1+1) = 2j = 3 -> 5 < 7 -> dp[5] = max(2, 2+1) = 3j = 4 -> 3 < 7 -> dp[5] = max(3, 2+1) = 3

🧩 为什么不能只用一个循环?

因为我们求的是:

“在前面所有满足条件的数里,找一个最优的情况来更新当前的状态”。

只有看完所有的 j < i 才能找到最优的更新路径,所以必须有一个内层循环来“扫描过去”。


✅ 总结记忆方法:

  • i当前状态

  • j过去状态

  • if 条件成立,说明可以从过去 j 走到现在 i

  • dp[i] = max(dp[i], dp[j]+1) 就是取过去所有能转移过来的路径中最优的那一条

for i := 1; i < n; i++ {for j := 0; j < i; j++ {// 某种条件成立// dp[i] = max(dp[i], dp[j] + ...)}
}

这类“双重 for + 状态转移”的写法,在一类特定的动态规划问题中非常经典和高频。这类问题一般具有以下特征:


✅ 典型问题特征

  1. 子问题具有前后关系(i/j 结构)

    • 当前状态 i 要依赖过去某些状态 j < i

    • 类似“前缀分析”

  2. 具有单调性约束

    • nums[j] < nums[i]end[j] <= start[i] 等条件

  3. 求解最大/最小值

    • 求“最长”、“最大收益”、“最多区间”、“最优策略”


✅ 高频问题示例

问题类型描述dp含义转移条件
最长上升子序列 (LIS)找递增的最大长度dp[i]:以 i 结尾的最长长度nums[j] < nums[i]
最长不下降子序列可以等于也递增dp[i]nums[j] <= nums[i]
最长摆动子序列上下起伏交替up[i], down[i]比较大小后转移
最大不重叠区间数按 end 排序后贪心/DPdp[i]:前 i 个的最大区间数end[j] <= start[i]
最大信封嵌套数(俄罗斯套娃)求最多可嵌套信封数对宽升高做 LISw[j] < w[i] && h[j] < h[i]
打家劫舍变形不偷相邻的dp[i]:前 i 个最大金额dp[i] = max(dp[i-1], dp[i-2]+nums[i])
最大连续子数组积需要 max 和 minmax[i], min[i] 同时维护根据乘积正负转移

✅ 模板结构(可抽象成函数)

for i := 1; i < n; i++ {for j := 0; j < i; j++ {if 满足条件(j, i) {dp[i] = max(dp[i], dp[j] + 某个值)}}
}

✅ 小技巧:可以加上前向指针以恢复路径

prev := make([]int, n) // 记录转移路径
for i := range prev {prev[i] = -1
}
...
if dp[j] + 1 > dp[i] {dp[i] = dp[j] + 1prev[i] = j
}

如果你以后看到类似“最XXX的子序列”“最XXX的不重叠区间”,只要是“i依赖j”型的问题,几乎都可以优先尝试这个模板。


文章转载自:

http://a4WKVU8J.Lsssx.cn
http://AAJMFAUy.Lsssx.cn
http://dKoAJInC.Lsssx.cn
http://6ex15siM.Lsssx.cn
http://UDTi3K2o.Lsssx.cn
http://ae9sMFA1.Lsssx.cn
http://WYdlbfgn.Lsssx.cn
http://qTIQ1RMS.Lsssx.cn
http://LUj7AIpO.Lsssx.cn
http://AN3BGqSN.Lsssx.cn
http://CyG25d5F.Lsssx.cn
http://GMUqFj0o.Lsssx.cn
http://1dRWHf3I.Lsssx.cn
http://ZAiNZpd1.Lsssx.cn
http://8ODIgEKj.Lsssx.cn
http://0QYkU7Mm.Lsssx.cn
http://IuMHZWSh.Lsssx.cn
http://gLhkcoaw.Lsssx.cn
http://52tphNGC.Lsssx.cn
http://SyKrMtMW.Lsssx.cn
http://59Xp26iy.Lsssx.cn
http://bgH2se8X.Lsssx.cn
http://w9W7bNam.Lsssx.cn
http://2aPtGBne.Lsssx.cn
http://cBW1jgSO.Lsssx.cn
http://bSvqMbKx.Lsssx.cn
http://T9TtWnja.Lsssx.cn
http://qMk8g3h4.Lsssx.cn
http://w64W8VBQ.Lsssx.cn
http://MSRDBM10.Lsssx.cn
http://www.dtcms.com/wzjs/604182.html

相关文章:

  • 网站开发全栈教程网站群发推广软件
  • 宁波营销型网站建设优化建站做任务的正规网站
  • 哈尔滨开网站页面设计图
  • 甘肃 网站建设长沙找工作哪个网站好
  • 毕节做网站网站图片设计效果图
  • 设计素材网站解析做网站的销售好做吗
  • vs如何做网站湖南网站推广优化
  • 网站的建设时间表市场监督管理局上班时间
  • h5网站开发定制百度手机浏览器
  • 网站后台上传图片脚本错误长沙建站模板
  • 网站如何做ip签名图片建立营销型网站
  • 营销型网站制作msgg做的网站怎样适配手机屏幕
  • 教育类网站配色wordpress用户枚举
  • 做义工旅行有哪些网站大数据技术主要学什么
  • 有什么网站可以做深圳初二的试卷练习网站设计规划 优帮云
  • 企业网站制作 西安网页设计找工作
  • 建设网站的题目广州网站推广排名
  • 广州网站优化外包wordpress 企业网站主题
  • 网站建设哪家企业好精品网站建设比较好
  • 衡水建设企业网站学校的网站如何建设
  • 做房源网站网络媒体发稿
  • 二级域名做城市分网站南京做网站开发 待遇
  • 城乡建设局的官方网站flash做ppt的模板下载网站
  • 淘宝的网站架构做电商网站公司
  • 住房和城乡建设部网站职责响应式网站免费
  • 织梦网站地图怎么做xml河北省老区建设促进会网站
  • 网站内容分享自己做的网页怎么上传到网站
  • 发布推广信息的网站大连建网站公司
  • 郑州网站建设三猫网络长春网站建设翻译
  • 公司网站代码公司logo标志设计免费