Given a string containing digits from 2-9 inclusive, return all possible letter combinations that the digit could represent. Return the answer in any order.
A mapping of digits to letters (just like on the telephone buttons) is given below. Note that 1 does not map to any letters.
2 -> abc, 3 -> def, 4 -> ghi, 5 -> jkl, 6 -> mno, 7 -> pqrs, 8 -> tuv, 9 -> wxyz
This is a classic backtracking problem where at each digit position, we try all possible letters that digit maps to, then recurse to the next digit.
The total combinations = product of letters for each digit. For "23", that's 3 * 3 = 9 combinations.
digits = "23"["ad","ae","af","bd","be","bf","cd","ce","cf"]digits = ""[]digits = "2"["a","b","c"]0 <= digits.length <= 4digits[i] is a digit in the range ["2", "9"]Click "Run" to execute your code against test cases
Socratic guidance - I'll ask questions, not give answers