C++/공부 정리
path 전역 배열, n차원 배열
sondiaa
2021. 10. 5. 06:54
path 전역 배열
재귀 호출 시 경로를 추적하기 위해 path 배열을 사용한다.
현재 시점이 어디인지도 정확히 알 수 있다.
과정
1. 진입할 노드를 path 배열에 기록한다.
2. 다음 level 재귀 호출
3. path 배열 기록 지우기
level = 3 일 때 경로를 출력하기
#include <iostream>
using namespace std;
char path[3];
void run(int level)
{
if(level == 3)
{
cout << path << '\n';
return;
}
for(int i=0; i<3; i++)
{
path[level] = 'A' + i;
run(level+1);
path[level] = 0;
}
}
int main()
{
run(0);
return 0;
}
level = 3 일 때 배열에 저장된 경로를 출력하기
#include <iostream>
using namespace std;
char name[4] = "BAK", path[3];
void run(int level)
{
if(level == 3)
{
cout << path << '\n';
return;
}
for(int i=0; i<3; i++)
{
path[level] = name[i];
run(level+1);
path[level] = 0;
}
}
int main()
{
run(0);
return 0;
}
n차원 배열
n차원을 생각하지말고 3차원의 경우 2차원 배열이 갯수라고 생각하고 4차원 배열의 경우 해당 3차원 배열의 갯수라고 생각하는게 좋다.