본문 바로가기

트리2

[자료구조] 이진 트리 구현 1. 순차 자료구조를 이용한 이진 트리 구현 1) 1차원 배열의 순차 자료구조 사용 높이가 h인 포화 이진 트리의 노드 번호를 배열의 인덱스로 사용 인덱스 0번 : 실제로 사용하지 않고 비워둔다. 인덱스 1번 : 루트 저장 2) 이진 트리의 1차원 배열에서의 인덱스 관계 노드 인덱스 성립 조건 노드 i의 부모 노드 [ i/2 ] 정수로 만듦 (가우스 기호) i > 1 노드 i의 왼쪽 자식 노드 2 * i (2 * i) ≤ n 노드 i의 오른쪽 자식 노드 (2 * i) + 1 (2 * i + 1) ≤ n 루트 노드 1 0 < n 3) 이진 트리의 순차 자료구조 표현 단점 사향(Skewed) 이진 트리의 경우에 사용하지 않는 배열 원소에 대한 메모리 공간 낭비 발생 트리의 원소 삽입, 삭제에 대한 배열의 크.. 2020. 6. 24.
[자료구조] 트리 1. 개념 트리 : 계층적인 구조를 나타내는 자료구조 원소 간에 1 : 다 관계를 가지는 비선형 자료구조 원소 간에 계층관계를 가지는 계층형 자료구조 상위 원소에서 하위 원소로 내려가면서 확장되는 트리(나무) 모양의 구조(부모 - 자식 관계의 노드로 이루어짐) 응용 분야 - 계층적인 조직표현, 파일 시스템, 인공지능에서의 결정 트리 2. 용어 노드(node) : 트리의 구성요소 루트(root) : 부모가 없는 노드 (A) 서브 트리(subtree) : 하나의 노드와 그 노드들의 자손들로 이루어진 트리 (B, C, D) 단말노드(terminal node) : 자식이 없는 노드 (E, F, G, H, I, J) 비단말노드 : 적어도 하나의 자식을 가지는 노드 (A, B, C, D) 레벨(level) : 트리.. 2020. 6. 24.