ν€μλ
- μν(νΈλ¦¬ : μ μ/μ€μ/νμ, κ·Έλν : BFS/DFS)
μν(Traversal)
- νΈλ¦¬, κ·Έλνμ κ°μ΄ μ°κ²°λ μλ£κ΅¬μ‘°μμ λͺ¨λ λ Έλλ₯Ό ν λ²μ© νμνλ κ²
- μνμ λͺ©μ : λͺ¨λ νΉμ νΉμ λ Έλλ₯Ό λ°©λ¬Ένλ λ°©λ²μ μ°Ύλ κ²
- λ°©ν₯μ λ°λΌ μννλ λ°©λ²μ΄ λ¬λΌμ§λ€.
[μν] νΈλ¦¬κ΅¬μ‘°
- νΈλ¦¬ ꡬ쑰μμμ μνλ ν¬κ²
μ μ
,μ€μ
,νμ
λ‘ λλμ΄μ§λ€.
- μ μ : 1. Root node -> 2. Left node -> 3. Right node
- μ€μ : 1. Left node -> 2. Root node -> 3. Right node
- νμ : 1. Left node -> 2. Right node -> 3. Root node
- λ¨μνκ² μΌμͺ½μμ μ€λ₯Έμͺ½μ΄λ©΄μ Root nodeμ μμΉμ λ°λΌ λλμ΄μ§λ€κ³ μκ°νλ©΄ μ½λ€.
# μ¬κ·ν¨μλ₯Ό μ¬μ©ν νΈλ¦¬κ΅¬μ‘° μν
## μ μ
def pre_order(node):
print(node.value)
pre_order(node.left)
pre_order(node.right)
## μ€μ
def in_order(node):
in_order(node.left)
print(node.value)
in_order(node.right)
## νμ
def post_order(node):
post_order(node.left)
post_order(node.right)
print(node.value)
'πΏ Data > λΆνΈμΊ ν' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[TIL] 106. λμ νλ‘κ·Έλλ°(DP) (0) | 2022.04.14 |
---|---|
[TIL] 105. BFS/DFS (0) | 2022.04.13 |
[TIL] 103. [μλ£κ΅¬μ‘°] κ·Έλν (0) | 2022.04.12 |
[TIL] 102. [μλ£κ΅¬μ‘°] ν΄μν μ΄λΈ (0) | 2022.04.11 |
[TIL] 101. [λΆν μ 볡, μ λ ¬] ν΅ μ λ ¬, λ³ν© μ λ ¬ (0) | 2022.04.07 |