Node 구조를 통해 생성된 이진트리에서 이진 탐색 트리에 삽입하는 재귀함수 Node* insertBinaryTree(Node* node, int val) 작성
정보관리기술사 제107회 4교시 28번 문항으로, 과목은 SW공학/프로젝트관리입니다. ‘이진 탐색 트리’ 키워드는 정보관리기술사 기출 4문항에 나왔습니다.
원문 문제
정보관리기술사 제107회 28번. Node 구조를 통해 생성된 이진트리에서 이진 탐색 트리에 삽입하는 재귀함수 Node* insertBinaryTree(Node* node, int val) 작성
핵심 키워드
- 이진 탐색 트리
- 재귀 함수
- Node 포인터
- 트리 삽입 알고리즘
- 재귀 호출
고득점 가이드 — 1. 개요
이진 탐색 트리(BST) 는 각 노드 기준 왼쪽 서브트리에 작은 값, 오른쪽에 큰 값을 보관해 평균 O(log n) 검색·삽입·삭제를 제공하는 정렬 자료구조다. 재귀 삽입은 값 크기에 따라 적절한 서브트리로 내려가다 빈 자리에 새 노드를 생성·연결하며, 호출자는 반환값을 부모 자식 포인터에 재할당해 부모-자식 연결을 자동 유지한다. 본 답안은 종료 조건과 분기 기준을 먼저 정리하고 이를 반영한 함수 코드를 제시한다([그림 1] 참조).
출제 이력
- 이진 탐색 트리기출 4문항
- 재귀 함수기출 1문항
- Node 포인터기출 1문항
- 트리 삽입 알고리즘기출 1문항
- 재귀 호출기출 1문항