μλ£κ΅¬μ‘° λ° μ€μ΅ - [8] νΈλ¦¬ Tree μ€μ΅λ¬Έμ (νμ΄μ¬μΌλ‘ μ μμν, νμμν ꡬν) (3)
μ νΈλ¦¬λ₯Ό μ°κ²°λ¦¬μ€νΈλ₯Ό μ΄μ©ν΄μ ꡬννκ³ , μ£Όμ΄μ§ λ
Έλμ λν΄ μμ κ³Ό μΌμͺ½ μμ, μ°μΈ‘ μμμ μ©λμ μμλλ‘ μΆλ ₯νμμ€. β» μ°Έκ³ μ¬ν: μ€μ΅ λ° ν
μ€νΈ μ©μ΄μ±μ μν΄ λ³Έ λ¬Έμ μμλ κ³ μ λ νΈλ¦¬λ₯Ό μ¬μ©νμ§λ§, μΌλ°μ μΌλ‘ λμ μΌλ‘ μ½μ
, μμ κ°λ₯ν νΈλ¦¬λ₯Ό μ¬μ©ν¨ μΆλ ₯ β¦ μμ λ° λ
Έλ μ‘΄μ¬ μ¬λΆμ λ°λΌ μΆλ ₯ λ΄μ©μ΄ λ¬λΌμ§ - νμͺ½ μμλ§ μ‘΄μ¬νλ κ²½μ°, μμ κ³Ό ν΄λΉ μμ λ
Έλμ μ©λ 2κ° κ°λ§ μΆλ ₯ - μμ λ
Έλκ° μλ κ²½μ°, μμ μ μ©λ 1κ° κ°λ§ μΆλ ₯ - μ‘΄μ¬νμ§ μλ λ
Έλλ²νΈκ° μ
λ ₯λλ κ²½μ° –1μ μΆλ ₯ μ λ¬Έμ λ νΈλ¦¬λ₯Ό μννλ©° ν΄λΉνλ λ
Έλλ₯Ό μ°Ύκ³ , 쑰건μ λ§κ² μΆλ ₯ν΄μΌ νλ€κ³ μκ°νλ€. class Node: def __init__(self,data,L=None,R=None,parent=None..
μλ£κ΅¬μ‘° λ° μ€μ΅ - [8] νΈλ¦¬ Tree (νμ΄μ¬μΌλ‘ νΈλ¦¬ ꡬν) (1)
νΈλ¦¬ ADT νΈλ¦¬ ADTλ κ³μΈ΅μ μΌλ‘ μ μ₯λ λ°μ΄ν° μμλ€μ λͺ¨λΈλ§ ν κ²μ΄λ€. μμ λ°μ΄ν° ꡬ쑰λ€κ³Ό μ°¨μ΄μ μ΄λΌλ©΄ κ³μΈ΅μ μ΄λΌλ μ μ΄λ€. 맨 μμ μμλ₯Ό μ μΈνκ³ , κ° νΈλ¦¬ μμλ λΆλͺ¨(parent) μμμ 0κ° μ΄μμ μμ(children) μμλ€μ κ°μ§λ€. μ μ : νΈλ¦¬λ λΉμ΄μμ§ μλ€ -> μκ³ λ¦¬μ¦ λ¨μν νΈλ¦¬ μ©μ΄ 루νΈ(root): λΆλͺ¨κ° μλ λ
Έλ(A) λ΄λΆλ
Έλ(internal node): μ μ΄λ ν κ°μ μμμ κ°μ§ λ
Έλ(A, B, C, F) μΈλΆλ
Έλ(external node), λλ 리ν (leaf): μμμ΄ μλ λ
Έλ(E, I, J, K, G, H, D) νμ (siblings): κ°μ λΆλͺ¨λ₯Ό κ°μ§ λ
Έλλ€(G, H) λ
Έλμ μ‘°μ(ancestor): λΆλͺ¨(parent), μ‘°λΆλͺ¨(grandparen..