🙇‍♀️전위 순회, 중위 순회, 후위 순회

image

전위 순회 출력 : 1 2 4 5 3 6 7  
중위 순회 출력 : 4 2 5 1 6 3 7  
후위 순회 출력 : 4 5 2 6 7 3 1  

전위, 중위, 후위의 이름은 실질적으로 작동하는 코드가 어느 위치에 있느냐에 따라서 달라진다.

v * 2v위치에서 왼쪽 자식을 말한다.
v * 2 + 1v위치에서 오른쪽 자식을 말한다.

전위 순회

void D(int v)
{
	if (v > 7)
		return;
    cout << v << " "; // 실제 일하는 코드
	D(v * 2);
	D(v * 2 + 1);
}

전위 순회 출력

중위 순회

void D(int v)
{
	if (v > 7)
		return;
	D(v * 2);
    cout << v << " "; // 실제 일하는 코드
	D(v * 2 + 1);
}

중위 순회 출력

후위 순회

void D(int v)
{
	if (v > 7)
		return;
	D(v * 2);
	D(v * 2 + 1);
    cout << v << " "; // 실제 일하는 코드
}

후위 순회 출력