中等题,还可以,可完成。
class Solution: def letterCombinations(self, digits: str) -> List[str]: if digits==‘‘: return ‘‘ memo={‘2‘:[‘a‘,‘b‘,‘c‘], ‘3‘:[‘d‘,‘e‘,‘f‘], ‘4‘:[‘g‘,‘h‘,‘i‘], ‘5‘:[‘j‘,‘k‘,‘l‘], ‘6‘:[‘m‘,‘n‘,‘o‘], ‘7‘:[‘p‘,‘q‘,‘r‘,‘s‘], ‘8‘:[‘t‘,‘u‘,‘v‘], ‘9‘:[‘w‘,‘x‘,‘y‘,‘z‘]} if len(digits)==1: return memo[digits] i=1 r=[] a=memo[digits[0]] while i<len(digits): b=memo[digits[i]] for j in a: for k in b: if j+k not in r: r.append(j+k) a=r i+=1 r=[] return a
执行用时 :40 ms, 在所有 python3 提交中击败了91.98%的用户
内存消耗 :13.8 MB, 在所有 python3 提交中击败了5.30%的用户
——2019.10.18
原文地址:https://www.cnblogs.com/taoyuxin/p/11698169.html
时间: 2024-10-31 14:06:48