leetcode 刷题 90 91
        【摘要】       
class Solution: def subsetsWithDup(self, nums: List[int]) -> List[List[int]]: res = [[]] for x, k in collections.Counter(nums).items(): res.extend([subset + [x] * n for subset in r...
    
    
    
    
 
class Solution: def subsetsWithDup(self, nums: List[int]) -> List[List[int]]: res = [[]] for x, k in collections.Counter(nums).items(): res.extend([subset + [x] * n for subset in res for n in range(1, k+1)]) return res
  
 - 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 
class Solution: def subsetsWithDup(self, nums: List[int]) -> List[List[int]]: res=[[]] for val in nums: n=len(res) for i in range(n): #res[i]+[val] would return a new list without affecting the original res[i] #sort the list to avoid duplicates add=sorted(res[i]+[val]) if add not in res: res.append(add) return res
  
 - 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 - 8
 - 9
 - 10
 - 11
 - 12
 - 13
 

 
class Solution(object): def numDecodings(self, s): if not s: return 0 dp = [0] * (1 + len(s)) dp[0] = 1 for i in range(1, len(s) + 1): if s[i - 1] != "0": dp[i] = dp[i - 1] if i > 1 and 10 <= int(s[i-2:i]) <= 26: dp[i] += dp[i - 2] return dp[-1]
  
 - 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 - 8
 - 9
 - 10
 - 11
 - 12
 
class Solution(object): def numDecodings(self, s): if not s: return 0 len_s = len(s) dp = [1] + [0] * len_s for i in range(1, len_s + 1): if s[i - 1] != '0': dp[i] += dp[i - 1] if i >= 2 and 10 <= int(s[i - 2: i]) <= 26: dp[i] += dp[i - 2] return dp[len_s]
  
 - 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 - 8
 - 9
 - 10
 - 11
 
文章来源: maoli.blog.csdn.net,作者:刘润森!,版权归原作者所有,如需转载,请联系作者。
原文链接:maoli.blog.csdn.net/article/details/90575495
        【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
            cloudbbs@huaweicloud.com
        
        
        
        
        
        
        - 点赞
 - 收藏
 - 关注作者
 
            
           
评论(0)