모두CBT

다음 B-트리에 “50”을 삽입할 때의 설명으로 옳지 않은 것은? (단… | [7급 국가직 알고리즘] 26년 1회차 기출문제 상세 페이지

1[7급 국가직 알고리즘] 26년 1회차
다음 B-트리에 “50”을 삽입할 때의 설명으로 옳지 않은 것은? (단, 각 노드는 최대 4개의 키를 가질 수 있다)

문제 이미지
1
50이 루트 노드가 된다.
2
모든 리프 노드의 레벨은 동일하다.
3
50을 삽입하면 오버플로우가 발생한다.
4
50을 삽입할 때 분할(split) 연산이 필요하다.
해설

50을 삽입한 뒤 새 루트가 되는 키는 20이므로 50이 루트 노드가 된다는 설명이 옳지 않다.

50은 루트의 20과 60 사이 자식인 리프 [21, 25, 30, 45]에 들어가 키가 5개가 되므로 오버플로가 발생한다. 이 리프를 분할하면 중간 키 30이 루트로 올라가고, 루트는 [3, 7, 20, 30, 60]이 되어 다시 오버플로가 난다.

루트를 분할하면 중간 키 20이 새 루트가 되고, 50은 리프 [45, 50]에 남는다.

  • 모든 리프 노드의 레벨은 동일하다: B-트리는 루트 분할로만 높이가 늘어나므로 모든 리프가 같은 레벨을 유지한다.
  • 50을 삽입하면 오버플로우가 발생한다: 대상 리프에 키가 이미 4개 있어서 5개째가 들어가면 최대 키 수를 넘는다.
  • 50을 삽입할 때 분할 연산이 필요하다: 오버플로를 해소하려면 리프와 루트에서 차례로 분할해야 한다.

오류나 개정된 내용이 보이면 알려주세요

이어서 풀어보기

[7급 국가직 알고리즘] 26년 1회차 25문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요7급 국가직 알고리즘 기출문제 암기장 전체 보기