본문 바로가기

카테고리 없음

트리 순회

참고 자료는 다음과 같습니다.

 

- 파이썬 자료구조와 알고리즘 (한빛미디어, 2019)

트리 순회

○ 순회 : 트리, 그래프 같은 연결된 구조에서 노드에 접근할 때 사용되는 알고리즘

  ● 모든 노드에 접근하는 방법 또는 특정 노드만 접근하는 방법을 찾는 것임

깊이 우선 탐색

○ 깊이 우선 탐색 : 그래프 또는 트리에서 깊이를 우선하여 탐색하는 알고리즘

○ 시간 복잡도 : O(도달할 수 있는 노드 수 + 도달한 노드에서 나가는 간서너 수)

○ 후입선출 구조의 스택 사용해 구현함

전위 순회

○ 루트 노드 -> 왼쪽 노드 -> 오른쪽 노드 순으로 접근

ex)

* 노드 위의 숫자가 접근 순서임

후위 순회

○ 왼쪽 노드 - 오른쪽 노드 -> 루트 노드 순으로 접근

중위 순회

○ 왼쪽 노드 -> 루트 노드 -> 오른쪽 노드 순으로 접근

너비 우선 탐색

○ 트리, 그래프에서 너비를 우선하여 탐색하는 알고리즘

○ 시작 노드에서 특정 노드에 도달하는 데 필요한 최단 경로 찾는 문제에 활용

○ 접근한 노드를 저장하는 데 리스트 사용하며, 아직 접근 안한 노드는 선입선출 구조의 큐로 저장

○ 시간 복잡도 : O(도달할 수 있는 노드 수 + 도달한 노드에서 나가는 간서너 수)