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

域名后缀cn做网站华为手机业务最新消息

域名后缀cn做网站,华为手机业务最新消息,爱网度假,保山网站建设代码随想录-035期-算法训练营【博客笔记汇总表】-CSDN博客 第九章 动态规划part03● 343.整数拆分 ● 096.不同的二叉搜索树 详细布置 今天两题都挺有难度,建议大家思考一下没思路,直接看题解,第一次做,硬想很难想出来。343. 整数…

代码随想录-035期-算法训练营【博客笔记汇总表】-CSDN博客

第九章 动态规划part03● 343.整数拆分 
● 096.不同的二叉搜索树 详细布置 今天两题都挺有难度,建议大家思考一下没思路,直接看题解,第一次做,硬想很难想出来。343. 整数拆分 https://programmercarl.com/0343.%E6%95%B4%E6%95%B0%E6%8B%86%E5%88%86.html   
视频讲解:https://www.bilibili.com/video/BV1Mg411q7YJ96.不同的二叉搜索树 https://programmercarl.com/0096.%E4%B8%8D%E5%90%8C%E7%9A%84%E4%BA%8C%E5%8F%89%E6%90%9C%E7%B4%A2%E6%A0%91.html   
视频讲解:https://www.bilibili.com/video/BV1eK411o7QA 

目录

0343_整数拆分

0096_不同的二叉搜索树


0343_整数拆分

package com.question.solve.leetcode.programmerCarl2._10_dynamicProgramming;public class _0343_整数拆分 {
}class Solution0343 {public int integerBreak(int n) {int[] dp = new int[n + 1];dp[2] = 1;for (int i = 3; i <= n; i++) {for (int j = 1; j <= i / 2; j++) {dp[i] = Math.max(dp[i], Math.max((i - j) * j, dp[i - j] * j));}}return dp[n];}public int integerBreak2(int n) {if (n == 2) return 1;if (n == 3) return 2;if (n == 4) return 4;int result = 1;while (n > 4) {result *= 3;n -= 3;}result *= n;return result;}public int integerBreak3(int n) {//dp[i] 为正整数 i 拆分后的结果的最大乘积int[] dp = new int[n + 1];dp[2] = 1;for (int i = 3; i <= n; i++) {for (int j = 1; j <= i - j; j++) {//这里的 j 其实最大值为 i-j,再大只不过是重复而已,//并且,在本题中,我们分析 dp[0], dp[1]都是无意义的,//j 最大到 i-j,就不会用到 dp[0]与dp[1]dp[i] = Math.max(dp[i], Math.max(j * (i - j), j * dp[i - j]));//j * (i - j) 是单纯的把整数 i 拆分为两个数 也就是 i,i-j ,再相乘//而j * dp[i - j]是将 i 拆分成两个以及两个以上的个数,再相乘。}}return dp[n];}
}

0096_不同的二叉搜索树

package com.question.solve.leetcode.programmerCarl2._10_dynamicProgramming;public class _0096_不同的二叉搜索树 {
}class Solution0096 {public int numTrees(int n) {int dp[] = new int[n + 1];dp[0] = 1;for (int i = 1; i <= n; i++) {for (int j = 1; j <= i; j++) {dp[i] += dp[j - 1] * dp[i - j];}}return dp[n];}public int numTrees2(int n) {//初始化dp数组int[] dp = new int[n + 1];//初始化0个节点和1个节点的情况dp[0] = 1;dp[1] = 1;for (int i = 2; i <= n; i++) {for (int j = 1; j <= i; j++) {//对于第i个节点,需要考虑1作为根节点直到i作为根节点的情况,所以需要累加//一共i个节点,对于根节点j时,左子树的节点个数为j-1,右子树的节点个数为i-jdp[i] += dp[j - 1] * dp[i - j];}}return dp[n];}
}
http://www.wangmingla.cn/news/44907.html

相关文章:

  • 建设基础化学网站的经验如何让百度快速收录
  • wordpress 安全防范seo权重查询
  • 洛阳网站备案万能识图
  • 网站建设案例哪家好2023年国家免费技能培训
  • 哈尔滨一恒建设宁波网站制作优化服务公司
  • 做网站在线深圳网站开发制作
  • wordpress 网站标题设置方法百度广告推广平台
  • 邯郸建立网站费用以图搜图百度识图
  • 关于网站建设的合同范本网站开发流程图
  • 个人怎么注册商贸公司seo教程最新
  • 一二三四免费观看视频北京aso优化
  • 做桑拿网站挣钱吗杭州seo网站排名
  • 独立做网站前端数据外贸接单平台
  • 企业门户网站数据库设计怎么在百度上推广自己的产品
  • 武汉网络科技有限公司排名seo资料网
  • 武山县建设局网站新手怎么做网络销售
  • 东方财富网官方网站首页seo排名需要多少钱
  • 怎么搭建个人网站优帮云首页推荐
  • 网址导航网站建设全网线报 实时更新
  • 山西武汉网站建设东莞网络推广排名
  • 德州网站建设价格seo技术培训中心
  • 怎么到国外网站去接模具订单做免费推广网站排行榜
  • php网站留言板是怎么做的公司推广渠道
  • 网站防止复制代码网络营销技巧和营销方法
  • 国外政府网站建设案例今日头条极速版最新
  • 公司做网站的费用怎么记账营销策划有限公司经营范围
  • 网上开店的货源渠道有哪些东莞seo托管
  • 免费申请网页河南新站关键词排名优化外包
  • 苗木网站怎么做品牌网络营销策划
  • 手机网站做分享到朋友圈湖南网站推广优化