LeetCode322 零钱兑换
代码随想录题目链接/文章讲解/视频讲解:
代码随想录代码随想录PDF,代码随想录网站,代码随想录百度网盘,代码随想录知识星球,代码随想录八股文PDF,代码随想录刷题路线,代码随想录知识星球八股文https://programmercarl.com/0322.%E9%9B%B6%E9%92%B1%E5%85%91%E6%8D%A2.html第一想法:dp[i][j] 表示coins[0:i]可以组成 j 的最少个数。初始化没整明白,要如何确保加和等于j哪。
看完随想录后:每次都想用二维数组先开始,但是每次都做不出来。dp的式子能列出来,但是这么结果这么都不对。换成一维就没问题了。
难点:什么时候直接用一维,什么时候去用二维
LeetCode279 完全平方数
代码随想录题目链接/文章讲解/视频讲解:
代码随想录代码随想录PDF,代码随想录网站,代码随想录百度网盘,代码随想录知识星球,代码随想录八股文PDF,代码随想录刷题路线,代码随想录知识星球八股文https://programmercarl.com/0279.%E5%AE%8C%E5%85%A8%E5%B9%B3%E6%96%B9%E6%95%B0.html第一想法:为什么说跟322基本一样哪,我咋看不出来。没有明确的完全平方数的个数,我想应该先找到有哪些完全平方数可以被用作加和到n。找到之后继续dp[j] 表示前需要最少dp[j]个完全平方数去加和到j。dp[j] = min(dp[j], dp[j - perfect_number])。做事做出来了,但是感觉怪怪的。
看完随想录后:还是自己太蠢,完全平方数可以现算。确实没想到。
难点:如何吧完全平方数的计算融入到for loop中, 遍历时,如何让下标不越界。
LeetCode139 单词拆分
代码随想录题目链接/文章讲解/视频讲解:
第一想法:感觉跟完全背包问题很相似。dp应该用False全部初始化,dp[j] 代表到字符串下标为j的时候,可不可能用字典里的字符串组成。
看完随想录后:脑子已经不清醒了,自己写的那一版太复杂了,这个版本跟直接,简单
难点:捋不清楚逻辑