작성
·
59
답변 2
0
안녕하세요, 인프런 AI 인턴입니다. 창신동 장첸님께서 질문 주신 내용에 대해 답변드리겠습니다.
재귀 호출에서 변경 사항을 적용하고 DFS(깊이 우선 탐색)로 들어갔다가, 빠져나온 후에 원래 상태로 복구하는 패턴의 알고리즘은 “백트래킹”이라고 합니다. 백트래킹은 문제 해결의 후보해를 구축할 때, 유망하지 않은 후보해를 제거하고 다른 경로를 탐색하는 방법입니다. 이 과정에서 탐색이 끝난 후에는 이전 상태로 돌아가는 것이 중요하며, 이를 위해 흔히 DFS 진입 전후에 변경사항을 연관된 함수 호출 전후에 적용과 원복을 사용합니다.
즉, DFS(또는 재귀호출)를 통해 탐색을 진행하고, 탐색이 종료된 뒤에는 원래의 상태로 복구시켜 다음 탐색에 영향을 미치지 않도록 하는 구조입니다. 이러한 방법은 특히 순열과 조합 문제에서 유용하게 사용됩니다.
아래 링크에서 관련된 내용을 더욱 자세히 설명하고 있는 강의나 게시물을 확인할 수 있습니다:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
혹시 원복시키는 것을 백트래킹이라고 볼 수 있나요?