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

旅游网站html模板广西网站建设流程

旅游网站html模板,广西网站建设流程,公司网站 英文,沈阳网络科技公司排名322. 零钱兑换 题目链接#xff1a;322. 零钱兑换 文档讲解#xff1a;代码随想录 状态#xff1a;能想到凑足总额为j - coins[i]的最少个数为dp[j - coins[i]]#xff0c;但没想到加上一个钱币coins[i]即dp[j - coins[i]] 1就是dp[j]#xff08;考虑coins[i]#xff09…322. 零钱兑换 题目链接322. 零钱兑换 文档讲解代码随想录 状态能想到凑足总额为j - coins[i]的最少个数为dp[j - coins[i]]但没想到加上一个钱币coins[i]即dp[j - coins[i]] 1就是dp[j]考虑coins[i] 思路 凑足总额为j - coins[i]的最少个数为dp[j - coins[i]]那么只需要加上一个钱币coins[i]即dp[j - coins[i]] 1就是dp[j]考虑coins[i] 所以dp[j] 要取所有 dp[j - coins[i]] 1 中最小的。 递推公式dp[j] min(dp[j - coins[i]] 1, dp[j]); 注意事项 考虑到递推公式的特性dp[j]必须初始化为一个最大的数否则就会在min(dp[j - coins[i]] 1, dp[j])比较的过程中被初始值覆盖。 然后凑足总金额为0所需钱币的个数一定是0那么dp[0] 0; 题解 public int coinChange(int[] coins, int amount) {// 创建一个数组dp大小为amount 1用于存储到达每个金额的最小硬币数int[] dp new int[amount 1];// 将dp数组初始化为一个较大的值表示这些金额暂时无法通过给定的硬币组成Arrays.fill(dp, Integer.MAX_VALUE);// 如果金额为0则不需要任何硬币dp[0] 0;// 遍历每一种硬币面值for (int coin : coins) {// 对于每一种硬币从它的面值开始直到amount更新dp数组for (int j coin; j amount; j) {// 如果使用当前硬币可以减少硬币数则更新dp[j]if (dp[j - coin] ! Integer.MAX_VALUE) {dp[j] Math.min(dp[j], dp[j - coin] 1);}}}// 如果dp[amount]仍为初始值则表示无法用给定的硬币凑出amount返回-1return dp[amount] Integer.MAX_VALUE ? -1 : dp[amount]; } 279.完全平方数 题目链接279.完全平方数 文档讲解代码随想录 状态做过上道题后感觉还行 思路 dp[j]和为j的完全平方数的最少数量为dp[j] dp[j] 可以由dp[j - i * i]推出 dp[j - i * i] 1 便可以凑成dp[j]。 此时我们要选择最小的dp[j]所以递推公式dp[j] min(dp[j - i * i] 1, dp[j]); 题解 public int numSquares(int n) {// 创建一个大小为n 1的数组dp用于存储到达每个数所需的最少完全平方数数量int[] dp new int[n 1];// 将dp数组初始化为一个较大的值表示这些数暂时无法通过完全平方数组成Arrays.fill(dp, Integer.MAX_VALUE);// 如果数字为0则不需要任何完全平方数dp[0] 0;// 遍历所有可能的完全平方数for (int i 1; i Math.sqrt(n); i) {// 对于每一个完全平方数从它的值开始直到n更新dp数组for (int j i * i; j n; j) {// 如果使用当前完全平方数可以减少完全平方数的数量则更新dp[j]dp[j] Math.min(dp[j], dp[j - i * i] 1);}}// 返回dp[n]即为达到数字n所需的最少完全平方数数量return dp[n]; } 139.单词拆分 题目链接139.单词拆分 文档讲解代码随想录 状态不会 思路 单词就是物品字符串s就是背包单词能否组成字符串s就是问物品能不能把背包装满。 拆分时可以重复使用字典中的单词说明就是一个完全背包 dp[i] : 字符串长度为i的话dp[i]为true表示可以拆分为一个或多个在字典中出现的单词。 如果确定dp[j] 是true且 [j, i] 这个区间的子串出现在字典里那么dp[i]一定是truej i 。 所以递推公式是 if([j, i] 这个区间的子串出现在字典里 dp[j]是true) 那么 dp[i] true。 从递推公式中可以看出dp[i] 的状态依靠 dp[j]是否为true那么dp[0]就是递推的根基dp[0]一定要为true否则递推下去后面都都是false了。 题解 public boolean wordBreak(String s, ListString wordDict) {// 将wordDict转换为一个HashSet便于查找HashSetString set new HashSet(wordDict);// 动态规划数组boolean[] dp new boolean[s.length() 1];dp[0] true;// 遍历s的每个子串for (int i 1; i s.length(); i) {for (int j 0; j i; j) {// 如果子串s[j:i]在字典中且dp[j]为true则dp[i]设为trueif (dp[j] set.contains(s.substring(j, i))) {dp[i] true;break;}}}// 返回结果return dp[s.length()];}
http://www.zqtcl.cn/news/397375/

相关文章:

  • 网站自己怎么做无锡常规网络营销是什么
  • 活泼风格的网站crm免费客户管理系统
  • 网站系统发生错误百度seo灰色词排名代发
  • 免费做名片儿的网站wordpress grace6
  • 有关网站开发的创意四川工程造价信息网官网
  • 网站目录结构北京注册公司地址可以是住宅吗
  • 龙信建设集团网站傻瓜式建站软件下载
  • 在360做网站和百度做网站的区别什么是网站地址
  • 营销型的物流网站模板下载长江设计公司
  • 网站程序制作购买网站域名
  • 网站建设中html下载如何用社交网站开发客户
  • 开设购物网站的方案政务公开和网站建设情况
  • 一台云服务器做多个网站营销型网站的建设重点是什么
  • 泉港网站建设推广服务公司电子商务好就业吗
  • 自己做网站开发如何找客户wordpress 显示 子分类
  • 腾讯邮箱网页版登录宿迁seo公司
  • 网站建设找盖亚科技WordPress 百度 主动
  • 中国最受欢迎的网站杭州做电商网站
  • 百度招聘 网站开发全网营销实战培训
  • 备案网站内容说明广州哪个区封了
  • 大足建网站的软件开发者模式怎么打开
  • 中国有什么网站做跨境零售农商1号的网站建设费
  • 用宝塔给远程网站做备份购买一个网站需要多少钱
  • 百度蜘蛛不爬取网站做汽车新闻哪个网站好
  • 三维建设项目管理网站免费下载网站模板
  • 淘客联盟做任务网站页面设计所遵循的原则有哪些
  • 怎么建设收费网站行业网站建站
  • 织梦园模板网站自适应网站建设服务哪家好
  • 优秀专题网站恩施北京网站建设
  • 常用网站后缀企业网站用什么域名