상세 컨텐츠

본문 제목

트리

Algorithm/inflearn python algorithm

by 개복신 개발자 2021. 7. 31. 12:30

본문

728x90
반응형

 트리란?

이차원의 자료구조이다. 앞서 배웠던 스택과 큐는 낮은 차원의 자료구조인 방면 트리는 이차원의 자료구조이다.

트리 자료구조

A-->루트 노드(root)

G,H,J,E,K-->리프 노드(leaf)

B,C,D,F--> 내부 노드(internal)

 

-부모 자식 관계

노드 D-->노드 G,J,H의 부모

부모 노드, 자식 노드로 표현

간선으로 연결된 관계임

 

조상: 부모의 부모의 부모...

후손: 자식의 자식의 ...

 

 

-노드의 수준

루트 노드-->level0

순차적으로 1씩 커짐

 

-트리의 높이

=최대 수준 level +1

-부분 트리(서브 트리)

어느 한 노드를 기준으로 잘라내어 따로 분리한 트리

나무에서 가지 부분과 의미가 같음

 

-노드의 차수(degree)

=자식(서브트리)의 수

 

-이진 트리(binary tree)

모든 노드의 차수가 2이하인 트리

재귀적으로 정의 가능

루트 노드 & 왼쪽 서브 트리 & 오른쪽 서브트리

 

-포화 이진 트리

모든 레벨에서 노드들이 모두 채워져 있는 이진트리

높이가 k이고 노드의 개수가 2^k-1개라면 포화 이진트리

 

-이진 트리 

size()-->현재 트리에 포함되어 있는 노드의 수

depth()--> 현재 트리의 깊이

 

-이진 트리의 구현(노드)

data & left child & right child

반응형

'Algorithm > inflearn python algorithm' 카테고리의 다른 글

6.3 부분 집합 구하기(DFS)  (0) 2021.08.09
6.2 이진트리순회  (0) 2021.08.09
5.5 공중 구하기(큐)  (0) 2021.07.23
5.4 후위 연산  (0) 2021.07.22
5.3 후위 표기식 만들기(스택)  (0) 2021.07.22

관련글 더보기

댓글 영역