가장 기본적인 back-tracking 문제이다. n-queen problem의 축소판이라고 생각해도 될 듯
반복문 안에 재귀형태가 들어있는 구조라 처음 코드를 접했을 때 이해하기 어려운 부분이 많았다. 그래서 직접 값을 대입해보면서 어떻게 흘러가는지 파악하였다. (재귀호출 부분에 함수의 코드를 통채로 치환시켜서 이해해봐도 될 듯)
스택(재귀)를 이용하여 모든 경우를 탐색한다는 점에서 dfs와 일맥상통하는 부분도 있다.
디테일한 조건은 check와 다른 변수를 통해 설정
사이클 범위를 잘 파악하여 돌아왔을 때 해제해줘야 하는 값이 있는지 확인하자. iterator삭제 연산에서 재정의 또는 이번 코드의 check배열 등.
while문으로 구성하려 해보았으나, check해제하는 게 힘들더라.
'PS' 카테고리의 다른 글
자료구조 Hash (0) | 2020.05.13 |
---|---|
Sorting Method (0) | 2020.05.04 |
자료구조 List (0) | 2020.04.22 |
자료구조 Graph (0) | 2020.04.21 |
자료구조 Heap (0) | 2020.04.20 |