Phone Number to Letters

Medium~20 min

Given a string containing digits from 2 to 9 inclusive, return all possible letter combinations that the number could represent. Return the answer in any order.

A mapping of digits to letters (just like on a telephone keypad):

  • 2 → abc
  • 3 → def
  • 4 → ghi
  • 5 → jkl
  • 6 → mno
  • 7 → pqrs
  • 8 → tuv
  • 9 → wxyz

Note that 1 does not map to any letters.

If the input string is empty, return an empty array.

Examples

Example 1
Input: digits = "23"
Output: ["ad","ae","af","bd","be","bf","cd","ce","cf"]
Explanation: Digit 2 maps to "abc" and digit 3 maps to "def". All combinations of one letter from each digit are generated.
Example 2
Input: digits = ""
Output: []
Explanation: Empty input produces no combinations.
Example 3
Input: digits = "2"
Output: ["a","b","c"]
Explanation: Digit 2 maps to "abc". With only one digit, each letter is its own combination.

Constraints

  • 0 <= digits.length <= 4
  • digits[i] is a digit in the range ["2", "9"]
Code
Ctrl+EnterRun|Ctrl+⇧+EnterSubmit
Output

Run your code to see results

Use Cmd+Enter to run