2
pub fn letter_combinations(digits: String) -> Vec<String> {7
let phone_map = vec!["abc", "def", "ghi", "jkl", "mno", "pqrs", "tuv", "wxyz"];8
let mut output = Vec::new();13
phone_map: &Vec<&str>,14
output: &mut Vec<String>,16
if next_digits.is_empty() {17
output.push(combination);19
let letters = phone_map[next_digits.chars().nth(0).unwrap() as usize - '2' as usize];20
for letter in letters.chars() {21
let new_combination = combination.clone() + &letter.to_string();22
backtrack(new_combination, &next_digits[1..], phone_map, output);27
backtrack(String::new(), &digits, &phone_map, &mut output);