网站开发外快wordpress侧栏小工具栏

张小明 2026/1/9 21:24:03
网站开发外快,wordpress侧栏小工具栏,wordpress 汉化不是很好,wordpress3.9漏洞518.零钱兑换II 文章讲解/视频讲解 题目描述#xff1a; 给定不同面额的硬币和一个总金额。写出函数来计算可以凑成总金额的硬币组合数。假设每一种面额的硬币有无限个。 示例 1: 输入: amount 5, coins [1, 2, 5]输出: 4 解释: 有四种方式可以凑成总金额: 5552215211…518.零钱兑换II文章讲解/视频讲解题目描述给定不同面额的硬币和一个总金额。写出函数来计算可以凑成总金额的硬币组合数。假设每一种面额的硬币有无限个。示例 1:输入: amount 5, coins [1, 2, 5]输出: 4解释: 有四种方式可以凑成总金额:55522152111511111示例 2:输入: amount 3, coins [2]输出: 0解释: 只用面额2的硬币不能凑成总金额3。示例 3:输入: amount 10, coins [10]输出: 1注意你可以假设0 amount (总金额) 50001 coin (硬币面额) 5000硬币种类不超过 500 种结果符合 32 位符号整数思路本题就很像之前做过的“目标和”都是给出背包容量求装满背包的方法数。但是“目标和”每个元素只能使用一次前面我们介绍过了这是01背包的特征。而本题每种面额的硬币都有无穷个所以这就是之前提到过的完全背包一样来写动态规划五部曲1.确定dp数组及其下标含义dp[i][j]使用 下标为[0, i]的coins[i]能够凑满j包括j这么大容量的包有dp[i][j]种组合方法。2.确定递推公式完全背包递推公式与01背包的区别在于01背包递推公式为:dp[i][j] max(dp[i - 1][j], dp[i - 1][j - weight[i]] value[i])01背包如果放了物品i再取就只能拿物品0到物品i - 1这个范围了物品i拿不了。而完全背包公式为dp[i][j] max(dp[i - 1][j], dp[i][j - weight[i]] value[i])因为有无限个物品我拿完物品i下一次还是能从物品0到物品i的区间里拿。本题的一维dp数组递推公式为dp[j] dp[j - coins[i]]与目标和一致之前讲过这里不再过多赘述3.dp数组的初始化我们要关注的就是dp[0]装满背包容量为0的方法是1即不放任何物品dp[0] 14.确定遍历顺序完全背包的两个for循环随便先后顺序都可以但是本题不行因为本题本质和元素凑成的顺序没多大关系本题描述也是求组合数。假设存在结果221和212如果求的组合数那就只有一种如果是求排列数那么这可就算两种排列了。我们先来看 外层for循环遍历物品钱币内层for遍历背包金钱总额的情况。代码如下for (int i 0; i coins.size(); i) { // 遍历物品 for (int j coins[i]; j amount; j) { // 遍历背包容量 dp[j] dp[j - coins[i]]; } }假设coins[0] 1coins[1] 5。那么就是先把1加入计算然后再把5加入计算得到的方法数量只有{1, 5}这种情况。而不会出现{5, 1}的情况。所以这种遍历顺序中dp[j]里计算的是组合数如果把两个for交换顺序代码如下for (int j 0; j amount; j) { // 遍历背包容量 for (int i 0; i coins.size(); i) { // 遍历物品 if (j - coins[i] 0) dp[j] dp[j - coins[i]]; } }背包容量的每一个值都是经过 1 和 5 的计算包含了{1, 5} 和 {5, 1}两种情况。此时dp[j]里算出来的就是排列数所以一定是先遍历物品再遍历背包容量想不明白就打印数组自己看看5.举例推导dp数组输入: amount 5, coins [1, 2, 5] dp状态图如下最后红色框dp[amount]为最终结果。代码示例function change(amount: number, coins: number[]): number { const dp:number[] new Array(amount 1).fill(0) dp[0] 1 for(let i 0 ; i coins.length; i){ for(let j coins[i]; j amount; j){ dp[j] dp[j - coins[i]] } } return dp[amount] };377.组合总和IV文章讲解/视频讲解题目描述难度中等给定一个由正整数组成且不存在重复数字的数组找出和为给定目标正整数的组合的个数。示例:nums [1, 2, 3]target 4所有可能的组合为 (1, 1, 1, 1) (1, 1, 2) (1, 2, 1) (1, 3) (2, 1, 1) (2, 2) (3, 1)请注意顺序不同的序列被视作不同的组合。因此输出为 7。思路与上题一样的思路但是换成了求排列虽然本题题干说的是求组合但是我们对组合的定义其实是不强调顺序即1,5和5,1算同一个组合但其实算两个不同的排列。1.确定dp数组及其下标含义dp[i]凑成目标正整数为i的排列个数为dp[i]2.确定递推公式之前说过了只要是求装满背包有几种方法一般都是用dp[i] dp[i - nums[j]3.dp数组如何初始化dp[0]一定要初始化为1否则递归其他dp[i]就没有数值基础了其他全部初始化为0避免影响dp[i]累加4.确定遍历顺序上一题求的是组合我们先遍历物品再遍历背包本题求的是排列所以是先遍历背包再遍历物品。5.举例来推导dp数组我们再来用示例中的例子推导一下代码示例function combinationSum4(nums: number[], target: number): number { const dp:number[] new Array(target 1).fill(0) dp[0] 1 for(let i 1; i target; i){ for(let j 0; j nums.length; j){ if(i nums[j]){ dp[i] dp[i - nums[j]] } } } return dp[target] };爬楼梯进阶文章讲解题目描述假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬至多m (1 m n)个台阶。你有多少种不同的方法可以爬到楼顶呢注意给定 n 是一个正整数。输入描述输入共一行包含两个正整数分别表示n, m输出描述输出一个整数表示爬到楼顶的方法数。输入示例3 2输出示例3提示当 m 2n 3 时n 3 这表示一共有三个台阶m 2 代表你每次可以爬一个台阶或者两个台阶。此时你有三种方法可以爬到楼顶。1 阶 1 阶 1 阶段1 阶 2 阶2 阶 1 阶思路其实我们之前就写过一道爬楼梯了力扣上那道是一次只能爬一节或两节本题可以爬1到m任意节其实还是一个完全背包。每次能爬的阶数就是物品楼顶就是背包容量我这次跳了一节下次还能再跳一次一节也就是物品可以重复使用。而问跳到楼顶有几种方法其实不就是问装满背包有几种方法吗1.确定dp数组及其下标含义dp[i]爬到i个台阶的楼顶有dp[i]种方法2.确定递推公式求装满背包有几种方法递推公式一般都是dp[i] dp[i - nums[j]];本题比较特殊dp[i]的来源是dp[i -1],dp[i -2]......也就是dp[i - j]所以递推公式为dp[i] dp[i - j]3.dp数组如何初始化依旧是dp[0]为1其他非零下标全是14.确定遍历顺序这里先上一节再上三节和先上三节再上一节最后都上了四节但是算两种不同的方法前面提到过这种我们称作排列也就是背包容量在外面循环物品在内循环。5.举例推导dp数组与上题基本一致代码示例var climbStairs function (n: number): number { let dp: number[] new Array(n 1).fill(0); dp[0] 1; for (let j 1; j n; j) {//遍历背包 for (let i 1; i 2; i) {//遍历物品 if (j - i 0) dp[j] dp[j] dp[j - i]; } } return dp[n]; }
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

江西师范大学两学一做专题网站咸阳建设网站

文章目录前言一、详细操作演示视频二、具体实现截图三、技术栈1.前端-Vue.js2.后端-SpringBoot3.数据库-MySQL4.系统架构-B/S四、系统测试1.系统测试概述2.系统功能测试3.系统测试结论五、项目代码参考六、数据库代码参考七、项目论文示例结语前言 💛博主介绍&#…

张小明 2026/1/9 21:19:58 网站建设

汕头网站优化电话济南百度

蜂鸣器如何成为远程监控系统的“最后防线”?一位嵌入式工程师的实战解析最近在调试一个工业级远程监控网关时,客户反复强调一句话:“就算断网、断电,报警也得响起来!”这让我重新审视了系统中那个不起眼的小部件——蜂…

张小明 2026/1/9 21:15:54 网站建设

云南省住房和城乡建设厅官方网站教育培训机构有关的网站

前言 🌞博主介绍:✌CSDN特邀作者、全栈领域优质创作者、10年IT从业经验、码云/掘金/知乎/B站/华为云/阿里云等平台优质作者、专注于Java、小程序/APP、python、大数据等技术领域和毕业项目实战,以及程序定制化开发、文档编写、答疑辅导等。✌…

张小明 2026/1/9 21:13:51 网站建设

江山市建设厅网站手机网站的模板下载软件

硬件I2C从零到实战:不只是“接上就能用”的通信艺术你有没有遇到过这样的场景?明明代码写得一模一样,别人能读出传感器数据,你的板子却一直返回0xFF;逻辑分析仪抓出来一看,SDA线在某个时刻“卡死”了&#…

张小明 2026/1/9 21:11:49 网站建设

芜湖网站建设海长卷发背影图域名如何跟网站绑定

IISLockdown与UrlScan的安装配置全解析 在Web服务器的安全防护中,IISLockdown和UrlScan是两个重要的工具。IISLockdown可以帮助我们对IIS服务器进行安全锁定,而UrlScan则能对传入的URL请求进行过滤,阻止恶意请求。下面将详细介绍它们的安装、配置以及相关注意事项。 无人值…

张小明 2026/1/9 21:09:47 网站建设

素材网站下载天猫网店怎么开店

工具对比排名工具名称核心优势支持LaTeX适用场景aibiyeAIGC率降个位数,兼容知网规则是AI痕迹强处理aicheck学术改写优化,语义保留佳是格式统一化askpaper降重降AI一体,20分钟快速响应是初稿优化秒篇人类特征表述优化,高校适配是学…

张小明 2026/1/9 21:07:45 网站建设