class Solution(object):
def letterCombinations(self, digits):
self.src_list = ['', '',
['a', 'b', 'c'],
['d', 'e', 'f'],
['g', 'h', 'i'],
['j', 'k', 'l'],
['m', 'n', 'o'],
['p', 'q', 'r', 's'],
['t', 'u', 'v'],
['w', 'x', 'y', 'z']
]
digits.replace("1", "").replace("0", "")
if not digits:
return []
return self.func(digits)
def func(self, digits):
rlt = []
if not digits:
return ['']
else:
index = int(digits[0])
for w in self.src_list[index]:
tmp = self.func(digits[1:])
for s in tmp:
rlt.append(w + s)
return rlt