알고리즘 문제풀이
재귀 메모
1. 재귀 함수의 구조 재귀 함수의 경우 메인 함수의 스택 프레임 위에 push되어 쌓이는 구조를 가지고 있다. 이렇게 쌓이는 재귀함수는 각각이 자신이 돌아가야할 함수의 주소를 가지고 있으며, 알고리즘 문제를 풀 때 중요하게 생각할 점은 재귀함수 내의 함수 호출부 '이후'의 부분이 스택 구조로 실행된다는 점이다. int recursive(){ (재귀함수 호출부 이전. 선형적으로 실행됨) recursive(); (재귀함수 호출부 이후. 스택 구조로 실행됨) } 2. 재귀함수와 DFS로 보는 활용 void D(int v) { if (v > 7) { return; } else { D(v * 2);//왼쪽 자식의 번호가 v*2 D(v * 2 + 1);//오른쪽 자식의 번호가 v*2+1; cout
2023. 11. 18. 10:45