트리와 Binary Trees — 어린이 가족 트리 놀이!

발행: (2025년 12월 11일 오전 11:17 GMT+9)
3 min read
원문: Dev.to

Source: Dev.to

Cover image for Trees and Binary Trees — Kids' Family Tree Fun!

트리: 행복한 가족 차트

트리는 가족 사진 앨범과 같습니다. 맨 위에 조부모(루트) 가 한 명 있고, 그 아래에 자식들 이 있으며, 그 자식들 역시 자신의 자식을 가집니다. 모든 것이 위에서 아래로 자라납니다!

일상 속 예시

  • 학교 팀: 선생님(최상위) → 그룹 리더 → 친구들
  • 컴퓨터 폴더: “내 컴퓨터”(최상위) → 사진 → 내 그림

간단한 트리 그리기

     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

가족 트리 게임은 어떻게 하나요?

준비하기

  1. 컴퓨터에서 Python을 실행하세요(또는 python.org 온라인을 이용).
  2. 위 코드를 family_tree.py 라는 파일로 저장합니다.
  3. 명령줄에서 python family_tree.py 로 실행합니다.

실행 결과

Grandpa's left kid: Dad
Dad's left kid: Tom

Dad의 오른쪽 자식으로 “Lily” 를 추가하고 트리가 어떻게 커지는지 확인해 보세요!

실제 생활에서 트리는 어디에 쓰나요?

  • 트리: 회사 팀 구조, 메뉴 탐색(파일 → 사진 → 내 작품).
  • 이진 트리: 초고속 검색(예: 사전 조회), 게임 의사결정 트리.

이제 여러분은 가족 트리 아티스트! 직접 가족 트리를 그리거나 코드를 확장해 더 많은 친척을 추가해 보세요. 정말 재밌습니다! 🌳✨

Back to Blog

관련 글

더 보기 »

FinOps 컨설팅을 그만두겠다

몇 달 전, 나는 다양한 고객들을 지원하기 시작했고, 자원 및 인프라 최적화 전략을 구현하는 일을 맡았다. 그것은 복잡한 결정이었다...