[Recursion] Letter Combinations of a Phone Number
2021. 3. 31. 15:12ㆍ프로그래밍-코딩테스트/LeetCode
전화기의 숫자마다 알파벳이 매핑되어 있는데, 숫자 조합을 선택했을 때 숫자에 매핑된 알파벳으로 만들 수 있는 조합 을 찾는 문제다
기본적으로 backTracking문제다
keyMap이라는 딕셔너리에 매핑관계를 정의한다.
이후 backtrack이라는 함수를 만들었는데, 이는 path와 i를 인자로 갖는다.
콘솔을 다음과 같이 찍어 확인해보았다.
각 digit을 key로 두고 keyMap을 참고하여 letter를 찾아낸다.
그리고 letter 하나당 다음 조합을 재귀로 돌리는 방식이다.
이때 path의 조합이 모두 구해지면 digit의 길이와 같아질 것이므로 경계값을 걸어둔다
'프로그래밍-코딩테스트 > LeetCode' 카테고리의 다른 글
[Array] 3Sum (0) | 2021.03.31 |
---|---|
[DP] Coin Change (1) | 2021.03.31 |
[Array] Sort Colors (0) | 2021.03.31 |
[Tree] Construct Binary Tree from Preorder and Inorder Traversal (0) | 2021.03.31 |
[Tree] Flatten Binary Tree to Linked List (0) | 2021.03.29 |