tech-interview-handbook/algorithms/permutation.md

933 B

Permutation

  • You are given a 7 digit phone number, and you should find all possible letter combinations based on the digit-to-letter mapping on numeric pad and return only the ones that have valid match against a given dictionary of words.
  • Give all possible letter combinations from a phone number.
  • Generate all subsets of a string.
  • Print all possible N pairs of balanced parentheses.
    • E.g. when N is 2, the function should print (()) and ()().
    • E.g. when N is 3, we should get ((())), (()()), (())(), ()(()), ()()().
    • Source
  • Given a list of arrays, return a list of arrays, where each array is a combination of one element in each given array.
    • E.g. If the input is [[1, 2, 3], [4], [5, 6]], the output should be [[1, 4, 5], [1, 4, 6], [2, 4, 5], [2, 4, 6], [3, 4, 5], [3, 4, 6]].