摘要: 动态规划 思路: 用dp[i]表示s从0到下标i的子串的解码总数。下面分情况讨论: 如果字符串为空或者首字符为‘0’,则直接返回0 如果首字符s[0]不为0,则dp[0] = 1 dp[0]=1的情况下: 若s[1] == '0',那么s[0]=='1'或者s[1]=='2'时,dp[1] = 1, 阅读全文
posted @ 2020-06-18 12:40 nil_f 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 回溯法 思路: 参考78.子集,在添加子集的时候多了判断去重操作。 代码: class Solution: def subsetsWithDup(self, nums: List[int]) -> List[List[int]]: def backtrack(path = [],begin = 0) 阅读全文
posted @ 2020-06-18 10:53 nil_f 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 找规律 思路: 格雷编码生成过程,G(i) = i ^ (i/2) 例如: n = 3: G(0) = 000, G(1) = 1 ^ 0 = 001 ^ 000 = 001 G(2) = 2 ^ 1 = 010 ^ 001 = 011 G(3) = 3 ^ 1 = 011 ^ 001 = 010 阅读全文
posted @ 2020-06-18 09:57 nil_f 阅读(87) 评论(0) 推荐(0) 编辑