μμ νμ (λΈλ£¨νΈ ν¬μ€)
- κ°λ₯ν λͺ¨λ κ²½μ°μ μλ₯Ό λ€ μλν΄ λ΅μ μ°Ύλ λ°©λ²
- μ ννκ³ νμ€νκ² λ΅μ μ°Ύμ μλ μμ§λ§, μκ°μ΄ μ€λ κ±Έλ¦°λ€.
- λͺ¨λ κ²½μ°μ μλ₯Ό ꡬνλ λ¬Έμ κ°μ λΆλΆμμ λ§μ΄ μ¬μ©λλ μκ³ λ¦¬μ¦
- μμ νμ κΈ°λ² μ’ λ₯
DFS(κΉμ΄ μ°μ νμ)
: λ£¨νΈ λ Έλμμ μμν΄μ λ€μ λΆκΈ°(branch)λ‘ λμ΄κ°κΈ° μ μ ν΄λΉ λΆκΈ°λ₯Ό μλ²½νκ² νμνλ λ°©λ²
μ΄λ€ λ Έλλ₯Ό λ°©λ¬Ένμλμ§ μ¬λΆλ₯Ό λ°λμ κ²μ¬
- 1. μν νΈμΆ μ΄μ©(μκΈ° μμ μ νΈμΆνλμν μκ³ λ¦¬μ¦μ νν)
- 2. λͺ
μμ μΈ μ€ν μ¬μ©
- λͺ μμ μΈ μ€νμ μ¬μ©νμ¬ λ°©λ¬Έν μ μ λ€μ μ€νμ μ μ₯νμλ€κ° λ€μ κΊΌλ΄μ΄ μμ νλ€.
- μ¬μ©νλ κ²½μ°: λͺ¨λ λ Έλλ₯Ό λ°©λ¬Έ νκ³ μ νλ κ²½μ°μ μ΄ λ°©λ²μ μ ννλ€.
- κΉμ΄ μ°μ νμ(DFS)μ΄ λλΉ μ°μ νμ(BFS)λ³΄λ€ μ’ λ κ°λ¨νλ€.
- λ¨μ κ²μ μλ μ체λ λλΉ μ°μ νμ(BFS)μ λΉν΄μ λ리λ€.
- λλΉ μ°μ νμ(BFS)μ΄ κΉμ΄ μ°μ νμ(DFS)λ³΄λ€ μ’ λ 볡μ‘νλ€.
BFS(λλΉ μ°μ νμ)
: μμ μ μ μΌλ‘λΆν° κ°κΉμ΄ μ μ μ λ¨Όμ λ°©λ¬Ένκ³ λ©λ¦¬ λ¨μ΄μ Έ μλ μ μ μ λμ€μ λ°©λ¬Ένλ μν λ°©λ²
μ¬μ©νλ κ²½μ°: λ λ Έλ μ¬μ΄μ μ΅λ¨ κ²½λ‘ νΉμ μμμ κ²½λ‘λ₯Ό μ°Ύκ³ μΆμ λ μ΄ λ°©λ²μ μ ννλ€
- BFSλ μ¬κ·μ μΌλ‘ λμνμ§ μλλ€.
- BFSλ λ°©λ¬Έν λ
Έλλ€μ μ°¨λ‘λ‘ μ μ₯ν ν κΊΌλΌ μ μλ μλ£ κ΅¬μ‘°μΈ ν(Queue)λ₯Ό μ¬μ©νλ€.
- μ¦, μ μ μ μΆ(FIFO) μμΉμΌλ‘ νμ
- μΌλ°μ μΌλ‘ νλ₯Ό μ΄μ©ν΄μ λ°λ³΅μ ννλ‘ κ΅¬ννλ κ²μ΄ κ°μ₯ μ λμνλ€.
'π» > Algorithm' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
ν(Heap) (0) | 2022.06.12 |
---|---|
μμ_μλΌν μ€ν λ€μ€μ 체 (0) | 2022.06.12 |
μ΅λ 곡μ½μ_μ ν΄λ¦¬λ νΈμ λ² (0) | 2022.06.12 |
char to int / ASCII CODE (0) | 2022.04.19 |
Stack/Queue/Deque/PriorityQueue (0) | 2022.04.11 |