트리와 Binary Trees — 어린이 가족 트리 놀이!
발행: (2025년 12월 11일 오전 11:17 GMT+9)
3 min read
원문: Dev.to
Source: Dev.to

트리: 행복한 가족 차트
트리는 가족 사진 앨범과 같습니다. 맨 위에 조부모(루트) 가 한 명 있고, 그 아래에 자식들 이 있으며, 그 자식들 역시 자신의 자식을 가집니다. 모든 것이 위에서 아래로 자라납니다!
일상 속 예시
- 학교 팀: 선생님(최상위) → 그룹 리더 → 친구들
- 컴퓨터 폴더: “내 컴퓨터”(최상위) → 사진 → 내 그림
간단한 트리 그리기
Grandpa
/ \
Dad Uncle
/ \ \
Tom Lily Jack
Grandpa가 루트이며 — Dad를 통해 Tom을 찾을 수 있습니다!
이진 트리: 부모당 최대 두 명의 자식
이진 트리는 모든 부모가 최대 두 명의 자식(왼쪽 하나, 오른쪽 하나)만 갖는 특수한 트리입니다. 마치 쌍둥이 자녀가 있는 가족과 같습니다!
일상 속 예시
- 추측 게임: 50을 맞춰보세요? 너무 높음 → 25를 시도? 너무 낮음 → 37!
- 예/아니오 선택: 왼쪽 길 또는 오른쪽 길? 왼쪽을 고르면 → 또 다른 왼쪽/오른쪽
시도해볼 수 있는 초간단 코드 (Python)
# Tree like family members
class FamilyMember:
def __init__(self, name):
self.name = name
self.left_kid = None # Left child
self.right_kid = None # Right child
# Build family tree
grandpa = FamilyMember("Grandpa")
dad = FamilyMember("Dad")
tom = FamilyMember("Tom")
grandpa.left_kid = dad # Grandpa's left is Dad
dad.left_kid = tom # Dad's left is Tom
print("Grandpa's left kid:", grandpa.left_kid.name) # Dad
print("Dad's left kid:", dad.left_kid.name) # Tom
가족 트리 게임은 어떻게 하나요?
준비하기
- 컴퓨터에서 Python을 실행하세요(또는 python.org 온라인을 이용).
- 위 코드를
family_tree.py라는 파일로 저장합니다. - 명령줄에서
python family_tree.py로 실행합니다.
실행 결과
Grandpa's left kid: Dad
Dad's left kid: Tom
Dad의 오른쪽 자식으로 “Lily” 를 추가하고 트리가 어떻게 커지는지 확인해 보세요!
실제 생활에서 트리는 어디에 쓰나요?
- 트리: 회사 팀 구조, 메뉴 탐색(파일 → 사진 → 내 작품).
- 이진 트리: 초고속 검색(예: 사전 조회), 게임 의사결정 트리.
이제 여러분은 가족 트리 아티스트! 직접 가족 트리를 그리거나 코드를 확장해 더 많은 친척을 추가해 보세요. 정말 재밌습니다! 🌳✨