**Problem: **Given a sequence of numbers, show all possible letter combinations in a telephone keypad.

Recursive solution in Python:

[python]

keyboard = {

‘1’: [],

‘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’],

‘0’: []

}

def printkeys(numbers, prefix=""):

if len(numbers)==0:

print prefix

return

for letter in keyboard[numbers[0]]:

printkeys(numbers[1:], prefix+letter)

printkeys("234")

[/python]

Output:

adg adh adi aeg aeh aei afg afh afi bdg bdh bdi beg beh bei bfg bfh bfi cdg cdh cdi ceg ceh cei cfg cfh cfi

## Be First to Comment