一、17–电话号码的字母组合
代码:
class Solution(object):
def letterCombinations(self, digits):
"""
:type digits: str
:rtype: List[str]
"""
if len(digits) == 0:
return []
dic = {'2':'abc','3':'def','4':'ghi','5':'jkl','6':'mno','7':'pqrs','8':'tuv','9':'wxyz'}
strs = [dic[i] for i in digits]
stack = [ch for ch in strs[0]]
for i in range(1,len(strs)):
iters = len(stack)
for _ in range(iters):
temp = stack.pop(0)
for ch in strs[i]:
stack.append(temp+ch)
return stack
运行结果:
二、46-- 全排列
代码:
class Solution:
def permute(self, nums):
res = []
if len(nums) <= 1:
return [nums]
else:
for i in range(len(nums)):
temp = self.permute(nums[:i]+nums[i+1:])
for j in range(len(temp)):
temp[j].append(nums[i])
res.append(temp[j])
return res
执行结果: