Given a string containing digits from 2 to 9 inclusive, return all possible letter combinations that the number could represent. Return an empty list if the input string is empty.
The digit-to-letter mapping follows a standard phone keypad:
| Digit | Letters |
|---|---|
| 2 | abc |
| 3 | def |
| 4 | ghi |
| 5 | jkl |
| 6 | mno |
| 7 | pqrs |
| 8 | tuv |
| 9 | wxyz |
Input: digits = "23" Output: ["ad","ae","af","bd","be","bf","cd","ce","cf"] Explanation: 2 maps to abc, 3 maps to def. Every combination of one letter from each group gives 9 results.
Input: digits = "" Output: [] Explanation: Empty input returns an empty list.
Input: digits = "2" Output: ["a","b","c"] Explanation: Single digit 2 maps to three letters.
0 <= digits.length <= 4digits[i] is a digit in the range ['2', '9']digits = "23"