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

动态规划part03 Day43

LC343整数拆分(未掌握

  1. 未掌握分析:dp数组的含义没有想清楚,dp[i]表示分解i能够达到的最大乘积,i能够如何分解呢,从1开始遍历,直到i-1;每次要不是j和i-j两个数,要不是j和dp[i-j]两个以上的数字
  2. 递推公式:dp[i] = Math.max(dp[i],Math.max(jdp[i-j],j(i-j)))
  3. 代码
    在这里插入图片描述

LC96不同的搜索二叉树(未掌握

  1. n=3的情况
    • 当1为头结点的时候,其右子树有两个节点,看这两个节点的布局,是和 n 为2的时候两棵树的布局是一样的
    • 当3为头结点的时候,其左子树有两个节点,看这两个节点的布局,是和n为2的时候两棵树的布局也是一样的
    • 当2为头结点的时候,其左右子树都只有一个节点,布局是和n为1的时候只有一棵树的布局也是一样的
    • dp[3],就是 元素1为头结点搜索树的数量 + 元素2为头结点搜索树的数量 + 元素3为头结点搜索树的数量
      • 元素1为头结点搜索树的数量 = 右子树有2个元素的搜索树数量 * 左子树有0个元素的搜索树数量=dp[2]*dp[0]
      • 元素2为头结点搜索树的数量 = 右子树有1个元素的搜索树数量 * 左子树有1个元素的搜索树数量=dp[1]*dp[1]
      • 元素3为头结点搜索树的数量 = 右子树有0个元素的搜索树数量 * 左子树有2个元素的搜索树数量=dp[0]*dp[2]
  2. dp数组递归式:j:1-i,dp[i]+=dp[j-1]*dp[i-j]
  3. 代码
    在这里插入图片描述

相关文章:

  • 网络请求客户端WebClient的使用
  • 【Linux】Socket中的心跳机制(心跳包)
  • C语言数据结构堆排序、向上调整和向下调整的时间复杂度的计算、TopK问题等的介绍
  • redis数据类型之Hash,Bitmaps
  • P3128 [USACO15DEC] Max Flow P题解(树上差分,最近公共祖先,图论)
  • HDR视频相关标准-HDR vivid(二)
  • WordPress外贸网站建设的成功要素与技术点
  • 摩尔线程MTT S4000 AI GPU助力30亿参数大模型训练,性能比肩英伟达同类解决方案
  • Go语言GoFly框架快速新增接口/上手写代码
  • 23种设计模式之一— — — —装饰模式详细介绍与讲解
  • Java final关键字
  • AI在肿瘤学临床决策中的应用:一种多模态方法
  • Web3 知识体系架构图
  • Unix环境高级编程--8-进程控制---8.1-8.2进程标识-8.3fork函数-8.4 vfork函数
  • 【Linux】使用AddressSanitizer分析内存非法使用问题
  • docker不删除容器更改其挂载目录
  • Django学习
  • JavaScript-JavaWeb
  • 用Python实现办公自动化
  • 《庆余年算法番外篇》:范闲通过最短路径算法在阻止黑骑截杀林相
  • 上海数学教育及数学科普专家陈永明去世,享年85岁
  • 马上评丨学生举报食堂饭菜有蛆,教育局应该护谁的犊子
  • 航行警告!黄海南部进行实弹射击,禁止驶入
  • 弘扬 “上海精神”,上合组织政党论坛聚焦政党责任与使命
  • 美总统批准海底采矿,外交部:擅自授权开发损害国际社会共同利益
  • 现场观察·国防部记者会|美将举行大演习“应对中国”,备战太平洋引发关注