반응형
<학습일기>
5.
5-4 이진 탐색 트리 삭제
- 매우 복잡ㅎ다.
- 경우를 나누어서 이해하는 것이 좋다.
5-4-1. Leaf Node 삭제
- Leaf Node: Child Node가 없는 Node
- 삭제할 Node의 parent Node가 삭제할 Node를 가리키지 않도록 한다.
5-4-2. Child Node가 하나인 Node 삭제
- 삭제할 Node의 Parent Node가 삭제할 Node의 Child Node를 가리키도록 한다.
5-4-3. Child Node가 두 개인 Node 삭제
- 삭제할 Node의 오른쪽 자식 중, 가장 작은 값을 삭제할 Node의 Parent Node가 가리키도록 한다.
- 삭제할 Node의 왼쪽 자식 중, 가장 큰 값을 삭제할 Node의 Parent가 가리키도록 한다.
5-4-3-1. 삭제할 Node의 오른쪽 자식 중, 가장 작은 값을 삭제할 Node의 Parent Node가 가리키게 할 경우
- 삭제할 Node의 오른쪽 자식 선택
- 오른쪽 자식의 가장 왼쪽에 있는 Node를 선택
- 해당 Node를 삭제할 Node의 Parent Node의 왼쪽 Branch가 가리키게 한다.
- 해당 Node의 왼쪽 Branch가 삭제할 Node의 왼쪽 Child Node를 가리키게 한다.
- 해당 Node의 오른쪽 Branch가 삭제할 Node의 오른쪽 Child Node를 가리키게 한다.
- 만약 해당 Node가 오른쪽 Child Node를 가지고 있었을 경우에는, 해당 Node의 본래 Parent Node의 왼쪽 Branch가 해당 오른쪽 Child Node를 가리키게 한다.
<수강인증>
*본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.*
#패스트캠퍼스 #패캠챌린지 #직장인인강 #직장인자기계발 #패스트캠퍼스후기
#알고리즘기술면접완전정복올인원패키지Online
반응형
'패스트캠퍼스 챌린지' 카테고리의 다른 글
패스트캠퍼스 챌린지 16일차 (0) | 2022.02.08 |
---|---|
패스트캠퍼스 챌린지 15일차 (0) | 2022.02.07 |
패스트캠퍼스 챌린지 13일차 (0) | 2022.02.05 |
패스트캠퍼스 챌린지 12일차 (0) | 2022.02.04 |
패스트캠퍼스 챌린지 11일차 (0) | 2022.02.03 |