티스토리 뷰
관련 작성글 : 자료구조 - Data Structures with Python
강의 영상 (유튜브) : 자료구조 - 이진트리 - 정의와 순회(23:46~)
preorder와 inorder 결과물로 이진트리 유추하는 방법
preorder: ['F', 'B', 'A', 'D', 'C', 'E', 'G', 'I', 'H']
inorder: ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I']
- Preorder 순회에서 루트 노드 찾기:
preorder
의 첫 번째 요소는 루트 노드입니다. 여기서는'F'
가 루트 노드입니다.
- Inorder 순회에서 루트 노드를 기준으로 좌우 나누기:
'F'
를 기준으로inorder
를 좌우로 나눕니다.- 왼쪽 서브트리의
inorder
는['A', 'B', 'C', 'D', 'E']
, 오른쪽 서브트리의inorder
는['G', 'H', 'I']
입니다.
- Preorder 순회에서 왼쪽 서브트리와 오른쪽 서브트리 찾기:
preorder
에서 루트 다음에 나오는 요소들은 왼쪽 서브트리의 노드들입니다.- 왼쪽 서브트리의
preorder
는['B', 'A', 'D', 'C', 'E']
, 오른쪽 서브트리의 preorder는['G', 'I', 'H']
입니다.
- 재귀적으로 서브트리를 생성하기:
- 왼쪽 서브트리의 루트는 왼쪽 서브트리의
preorder
의 첫 번째 요소인'B'
이고, 그에 해당하는inorder
는['A', 'B', 'C', 'D', 'E']
입니다. - 오른쪽 서브트리도 동일한 방식으로 생성합니다.
- 왼쪽 서브트리의 루트는 왼쪽 서브트리의
- 반복:
- 이 과정을 계속 반복하여 트리를 완성합니다.
# F
# / \
# B G
# / \ \
# A D I
# / \ /
# C E H
'IT dev' 카테고리의 다른 글
hackerrank.com 프로그래밍 기술 배우기 기록 (업데이트) (0) | 2024.05.26 |
---|---|
깃! 커밋 메시지에 오타가! (깃 커밋 메시지 수정하기) (0) | 2024.01.05 |
파이썬 `*` 키워드 선언 및 호출 예시 (0) | 2023.12.21 |
[강의링크&실습저장소] 자료구조 - Data Structures with Python (1) | 2023.12.18 |
mysql json 색인 index 만들기 (ver 8 기준) (0) | 2023.06.29 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 커밋
- COTEetCIEL
- 제육 크레이프
- mackbook pro 13 2011
- 13inch-OLIVE
- AirDrop
- Windows 10
- Users folder
- 덴경대
- OS X 10.11
- Olive Show 2015
- 채낙영 셰프
- 다이크
- 윈도우 10
- OS X El Capitan
- 이재훈 셰프
- Bluetooth 4.0
- mysql #json #json_index # mysql_json
- 윈도우즈 10
- 크레이프 반죽 만들기
- olive show 2015 e32 151006
- 가이린
- 허브 치킨 통구이
- 사용자 폴더 이동
- continuity activation tool
- 파이썬 #자료구조 #data_structures #해시테이블 #한방향연결리스트 #양방향연결리스트 #실습 #깃허브
- D 드라이브
- 파이썬 #이진트리 #python
- 올리브쇼 2015
- 파이썬 #Python
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함