💡트리 순회(Tree traversal) 트리의 모든 노드를 한 번씩 방문하는 것을 말한다. 데이터를 어떤 순서로 볼 것이냐에 따라서 전위순회, 중위순회, 후위순회로 나눠진다. ☝전위 순회 루트 노드 -> 왼쪽 자식노드 -> 오른쪽 자식노드 1. 루트 노드 A에서부터 시작, A가 루트 노드이므로 A 먼저, A 기준으로 봤을 때 왼쪽 자식노드는 B이므로 B 방문. 2. B로 와서 B가 다시 루트 노드라고 생각하면 B의 왼쪽 자식노드는 C이므로 C를 방문. 3. C의 왼쪽 자식노드, 오른쪽 자식노드가 없기 때문에 다시 B의 오른쪽 노드인 D를 방문. 4. D가 방문할 수 있느 노드가 없기 때문에 B로 다시오면 B에서 방문할 수 있는 노드는 이미 방문완료. 따라서 A의 오른쪽 자식노드 E 방문. 5. E의 왼..
[자료구조] 트리 순회 (+코드 구현 with Python)
💡트리 순회(Tree traversal) 트리의 모든 노드를 한 번씩 방문하는 것을 말한다. 데이터를 어떤 순서로 볼 것이냐에 따라서 전위순회, 중위순회, 후위순회로 나눠진다. ☝전위 순회 루트 노드 -> 왼쪽 자식노드 -> 오른쪽 자식노드 1. 루트 노드 A에서부터 시작, A가 루트 노드이므로 A 먼저, A 기준으로 봤을 때 왼쪽 자식노드는 B이므로 B 방문. 2. B로 와서 B가 다시 루트 노드라고 생각하면 B의 왼쪽 자식노드는 C이므로 C를 방문. 3. C의 왼쪽 자식노드, 오른쪽 자식노드가 없기 때문에 다시 B의 오른쪽 노드인 D를 방문. 4. D가 방문할 수 있느 노드가 없기 때문에 B로 다시오면 B에서 방문할 수 있는 노드는 이미 방문완료. 따라서 A의 오른쪽 자식노드 E 방문. 5. E의 왼..
2023.05.17