인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

선은혜(Ella)님의 프로필 이미지
선은혜(Ella)

작성한 질문수

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

3. 이진트리순회(DFS: 깊이우선탐색)

이진트리순회(DFS:깊이우선탐색)

작성

·

461

·

수정됨

0

안녕하세요 강사님!

스택프레임을 그리면서, 전위순위는 console.log 가 맨위에 가야하고 중위순위는 가운데 가야하는거는 이해가 됩니다.

그런데 이 문제에서 어떻게 접근 방식을 바로 재귀로 풀어야겠다 라고 생각나셨는지 근본적인 이유가 이해가 가지 않습니다 ㅜㅜ 강의 보면서 선생님께서 재귀로 푸시니까 재귀로 푸는데, 왜 재귀로 접근하게 되었는지가 이해가 안되는 것 같습니다 ㅜㅜ

 

아직 재귀함수를 제대로 이해하지 못한 채 뒷문제로 넘어가서 그런걸까요??

해결답안을 외우는 건 할 수있는데, 어떻게 이 문제를 재귀로 접근하게 되었는지 근본적으로 떠오르지가 않는 것 같습니다.

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

깊이우선탐색이 한 경우의 길로 가다가 막히면 다시 되돌아 가서 다른 길로 가보는 백트랙킹을 하는 알고리즘인데 이렇게 왔던 길을 되돌아 가는 기능을 할 수 있는게 스택 자료구조를 쓰는 재귀함수밖에 없습니다.

앞으로 있을 부분집합, 중복순열, 순열, 조합 문제들을 풀다보면 경우의 수를 따지는 문제는 재귀함수를 이용해 접근해야 한다는 것을 느낌적으로 알게 될 겁니다.

 

선은혜(Ella)님의 프로필 이미지
선은혜(Ella)

작성한 질문수

질문하기