ποΈ μλ£κ΅¬μ‘°μ μκ³ λ¦¬μ¦/μκ³ λ¦¬μ¦,μλ£κ΅¬μ‘°
[μ λ ¬] κ³ κΈ μ λ ¬ μκ³ λ¦¬μ¦(λ³ν©/ν΅/ν/μ )
OR15A
2023. 11. 21. 18:04
λ³ν© μ λ ¬ (Merge Sort)

- λ³ν© μ λ ¬μ λΆν μ 볡 λ°©λ²μ μ¬μ©νλ μ λ ¬ λ°©λ²
μλ μ리:
- λ°°μ΄μ λ°μΌλ‘ λλλλ€.
- κ° λΆλΆμ μ¬κ·μ μΌλ‘ μ λ ¬ν©λλ€.
- μ λ ¬λ λ λΆλΆμ λ³ν©νμ¬ μμ ν μ λ ¬λ λ°°μ΄μ λ§λλλ€.
μκ° λ³΅μ‘λ:
- μ΅μ , νκ· , μ΅μ λͺ¨λ
κ³΅κ° λ³΅μ‘λ:
- (μΆκ° λ°°μ΄μ μ¬μ©νκΈ° λλ¬Έ)
μ½μ :
- μΆκ° λ©λͺ¨λ¦¬κ° νμν©λλ€.
μμ£Ό μ¬μ©λλ ν΄λμ€λ 컬λ μ :
- λ°°μ΄(int[], Integer[], String[] λ±), ArrayList, LinkedList
ν΅ μ λ ¬ (Quick Sort)

- ν΅ μ λ ¬λ λΆν μ 볡 μ λ΅μ μ¬μ©νμ§λ§, λ³ν© μ λ ¬κ³Όλ λ€λ₯΄κ² μλ
μλ μ리:
- νΌλ²(pivot) μμλ₯Ό μ νν©λλ€.
- νΌλ²μ κΈ°μ€μΌλ‘ λ°°μ΄μ λ λΆλΆμΌλ‘ λλλλ€: νΌλ²λ³΄λ€ μμ μμμ νΌλ²λ³΄λ€ ν° μμ.
- μ΄ κ³Όμ μ μ¬κ·μ μΌλ‘ λ°λ³΅ν©λλ€.
μκ° λ³΅μ‘λ:
- νκ· :
- μ΅μ : (νΌλ² μ νμ΄ μ’μ§ μμ κ²½μ°)
κ³΅κ° λ³΅μ‘λ:
- (μ¬κ· νΈμΆλ‘ μΈν μ€ν 곡κ°)
μ½μ :
- μ΅μ μ κ²½μ° μκ° λ³΅μ‘λκ° )μ΄ λ μ μμ΅λλ€.
μμ£Ό μ¬μ©λλ ν΄λμ€λ 컬λ μ :
- λ°°μ΄, ArrayList
ν μ λ ¬ (Heap Sort)

- ν μ λ ¬μ μ΄μ§ ν(binary heap) μλ£κ΅¬μ‘°λ₯Ό μ¬μ©νμ¬ μ λ ¬μ μν
μλ μ리:
- λ°°μ΄ μμλ₯Ό μ΅λ ν(max heap)μΌλ‘ ꡬμ±ν©λλ€.
- νμ 루νΈ(μ΅λ κ°)λ₯Ό λ°°μ΄μ 맨 λκ³Ό κ΅νν©λλ€.
- νμ ν¬κΈ°λ₯Ό μ€μ΄κ³ , ν μμ±μ 볡ꡬν©λλ€.
- μ κ³Όμ μ λ°λ³΅ν©λλ€.
μκ° λ³΅μ‘λ:
- νκ· λ° μ΅μ :
κ³΅κ° λ³΅μ‘λ:
- (μ μ리 μ λ ¬)
μ½μ :
- μμ μ±μ΄ μκ³ , ν΅ μ λ ¬μ΄λ λ³ν© μ λ ¬μ λΉν΄ μλμ μΌλ‘ λ릴 μ μμ΅λλ€.
μμ£Ό μ¬μ©λλ ν΄λμ€λ 컬λ μ :
- λ°°μ΄, PriorityQueue
μ Έ μ λ ¬ (Shell Sort)

- μ Έ μ λ ¬μ μ½μ μ λ ¬μ λ³νμΌλ‘, μΌμ ν κ°κ²©μΌλ‘ λ¨μ΄μ§ μμλ€μ μ λ ¬νλ λ°©μ
μλ μ리:
- κ°κ²©μ μ μ μ€μ¬κ°λ©°, κ° κ°κ²©μ μλ μμλ€μ λν΄ μ½μ μ λ ¬μ μνν©λλ€.
- λ§μ§λ§ λ¨κ³μμλ μΌλ° μ½μ μ λ ¬μ μνν©λλ€.
μκ° λ³΅μ‘λ:
- νκ· : λλ, κ°κ²©μ λ°λΌ λ¬λΌμ§
- μ΅μ : κ°κ²©μ λ°λΌ λ€λ¦, μΌλ°μ μΌλ‘
κ³΅κ° λ³΅μ‘λ:
- (μ μ리 μ λ ¬)
μ½μ :
- μ΅μ μ κ²½μ° μ±λ₯μ΄ λ§€μ° λ¨μ΄μ§ μ μμ΅λλ€.
μμ£Ό μ¬μ©λλ ν΄λμ€λ 컬λ μ :
- λ°°μ΄, ArrayList
.
μ°Έκ³ μλ£ : γμ½κ² λ°°μ°λ μλ£κ΅¬μ‘° with μλ°γ