ALOHA CLASS
/
νλ‘κ·Έλλ°
/
Java
/
μλ£κ΅¬μ‘°
/
μ λ ¬
Search
Share
μ λ ¬
μ ν μ λ ¬ (Selection Sort)
μ ν μ λ ¬μ λ°°μ΄μμ μ΅μκ°μ μ°Ύμ 맨 μμ μμμ κ΅ννλ κ³Όμ μ λ°λ³΅νμ¬ μ λ ¬νλ μκ³ λ¦¬μ¦μ λλ€.
ν΅μ¬ μμ
β’
λ°°μ΄μ μννλ©° μ΅μκ°μ μ°Ύμ 맨 μλΆν° μ±μλκ°λ λ°©μ
β’
λ κ°μ μλΈ λ¦¬μ€νΈλ‘ λλμ΄ μ λ ¬ μ§ν
β’
μ μ리 μ λ ¬(in-place sorting) μκ³ λ¦¬μ¦
μκ° λ³΅μ‘λ
μ£Όμ νΉμ§
β’
μ₯μ
β’
λ¨μ
μμ μ½λ
μ§μ ꡬν
μ νμ λ ¬
λ²λΈ μ λ ¬ (Bubble Sort)
λ°°μ΄μ μΈμ ν λ μμλ₯Ό λΉκ΅νμ¬ μμκ° λ§μ§ μμΌλ©΄ μλ‘ κ΅ννλ©΄μ μ λ ¬νλ μκ³ λ¦¬μ¦μ λλ€. κ°μ₯ ν° μμκ° λ²λΈμ²λΌ λ μ¬λΌ 맨 λ€λ‘ μ΄λνλ λͺ¨μ΅κ³Ό μ μ¬νμ¬ λ²λΈ μ λ ¬μ΄λΌκ³ ν©λλ€.
ν΅μ¬ μμ
β’
μΈμ ν λ μμλ₯Ό λΉκ΅νμ¬ κ΅ν
β’
ν λ²μ μνλ§λ€ κ°μ₯ ν° μμκ° λ§¨ λ€λ‘ μ΄λ
β’
n-1λ²μ μνλ‘ μ 체 μ λ ¬ μλ£
μκ° λ³΅μ‘λ
μ£Όμ νΉμ§
β’
ꡬνμ΄ λ§€μ° κ°λ¨ν¨
β’
μμ μ λ ¬(Stable Sort)
β’
μ μ리 μ λ ¬(In-place Sort)
β’
λΉν¨μ¨μ μΈ μκ° λ³΅μ‘λλ‘ μΈν΄ μ€λ¬΄μμλ μ μ¬μ©λμ§ μμ
μμ μ½λ
λ²λΈμ λ ¬
μ½μ μ λ ¬ (Insertion Sort)
μ΄λ―Έ μ λ ¬λ λΆλΆκ³Ό λΉκ΅νμ¬ μμ μ μμΉλ₯Ό μ°Ύμ μ½μ νλ μ λ ¬ μκ³ λ¦¬μ¦μ λλ€. λ°°μ΄μ λͺ¨λ μμλ₯Ό μμμλΆν° μ°¨λ‘λλ‘ μ΄λ―Έ μ λ ¬λ λ°°μ΄ λΆλΆκ³Ό λΉκ΅νμ¬ μμ μ μμΉλ₯Ό μ°Ύμ μ½μ ν©λλ€.
λ€μ΄λ² λΈλ‘κ·Έ | ALOHA
μ 보μ²λ¦¬κΈ°μ¬ μ€κΈ° for μ§μ₯μΈ - μμλ_μ½μ μ λ ¬
μ 보μ²λ¦¬κΈ°μ¬ μ€κΈ° for μ§μ₯μΈ - μμλ_μ½μ μ λ ¬
1. μμλ - μ½μ μ λ ¬ [λ¬Έμ ] μλμ <μμλ> λ 10κ°μ μμ°μκ° λ°°μ΄ A(6)μ μ λ ¬λμ§ μμ μν...
ν΅μ¬ μμ
β’
μ λ ¬λ λΆλΆκ³Ό μ λ ¬λμ§ μμ λΆλΆμΌλ‘ λλμ΄ μ§ν
β’
κ° μμλ₯Ό μ μ ν μμΉμ μ½μ
β’
in-place μκ³ λ¦¬μ¦μΌλ‘ μΆκ° λ©λͺ¨λ¦¬κ° κ±°μ νμνμ§ μμ
μκ° λ³΅μ‘λ
μ£Όμ νΉμ§
β’
μμ μ λ ¬(Stable Sort)
μ½μ μ λ ¬
λ³ν© μ λ ¬ (Merge Sort)
λΆν μ 볡(Divide and Conquer) μκ³ λ¦¬μ¦μ κΈ°λ°μΌλ‘ νλ μ λ ¬ λ°©μμΌλ‘, 리μ€νΈλ₯Ό μ λ°μ© λλμ΄ μ λ ¬ν ν λ€μ ν©μΉλ©΄μ μ 체λ₯Ό μ λ ¬νλ λ°©λ²
ν΅μ¬ μμ
β’
λΆν (Divide): μ λ ₯ λ°°μ΄μ κ°μ ν¬κΈ°μ 2κ°μ λΆλΆ λ°°μ΄λ‘ λΆν
β’
μ 볡(Conquer): λΆλΆ λ°°μ΄μ μ λ ¬
β’
κ²°ν©(Combine): μ λ ¬λ λΆλΆ λ°°μ΄λ€μ νλμ λ°°μ΄λ‘ λ³ν©
μκ° λ³΅μ‘λ
μ£Όμ νΉμ§
β’
μμ μ λ ¬(Stable Sort): λμΌν κ°μ λν΄ μλμ μμκ° μ μ§λ¨
β’
λΉμ μ리 μ λ ¬(Not-in-place Sort): μΆκ°μ μΈ λ©λͺ¨λ¦¬ 곡κ°μ΄ νμ
β’
λΆν μ 볡 λ°©μ: λ¬Έμ λ₯Ό μμ 2κ°μ λ¬Έμ λ‘ λΆλ¦¬νκ³ ν΄κ²°ν ν, κ²°κ³Όλ₯Ό λͺ¨μμ μλμ λ¬Έμ λ₯Ό ν΄κ²°
λ³ν© μ λ ¬
ν΅ μ λ ¬ (Quick Sort)
λΆν μ 볡(divide and conquer) λ°©μμ μ¬μ©νλ μ λ ¬ μκ³ λ¦¬μ¦μΌλ‘, νΌλ²(pivot)μ κΈ°μ€μΌλ‘ λ°°μ΄μ λΆν νκ³ μ¬κ·μ μΌλ‘ μ λ ¬νλ λ°©μμ λλ€.
ν΅μ¬ μμ
μκ° λ³΅μ‘λ
μ£Όμ νΉμ§
β’
λΆμμ μ λ ¬: λμΌν κ°μ μμλ€μ μλμ μμΉκ° λ³κ²½λ μ μμ
β’
μ μ리 μ λ ¬: μΆκ°μ μΈ λ©λͺ¨λ¦¬ 곡κ°μ΄ κ±°μ νμνμ§ μμ
β’
λ€λ₯Έ μ λ ¬ μκ³ λ¦¬μ¦μ λΉν΄ μΌλ°μ μΌλ‘ λΉ λ₯Έ μ±λ₯μ 보μ
μμ μ½λ (Java)
ν΅ μ λ ¬
ν μ λ ¬ (Heap Sort)
ν μ λ ¬μ μμ μ΄μ§ νΈλ¦¬λ₯Ό κΈ°λ°μΌλ‘ νλ ν(Heap) μλ£κ΅¬μ‘°λ₯Ό μ΄μ©νμ¬ λ°μ΄ν°λ₯Ό μ λ ¬νλ μκ³ λ¦¬μ¦μ λλ€. μ΅λ ν λλ μ΅μ νμ ꡬμ±νμ¬ μμ°¨μ μΌλ‘ μμλ₯Ό κΊΌλ΄μ΄ μ λ ¬μ μνν©λλ€.
ν΅μ¬ μμ
β’
ν(Heap) μλ£κ΅¬μ‘° νμ©
β’
μμ μ΄μ§ νΈλ¦¬ κΈ°λ°
β’
λΆμμ μ λ ¬
β’
μ μ리 μ λ ¬(in-place sorting)
μκ° λ³΅μ‘λ
μ£Όμ νΉμ§
β’
νμ O(nlog n)μ μκ° λ³΅μ‘λλ₯Ό 보μ₯
β’
μΆκ° λ©λͺ¨λ¦¬ 곡κ°μ΄ κ±°μ νμνμ§ μμ
β’
λκ·λͺ¨ λ°μ΄ν° μ λ ¬μ ν¨μ¨μ
β’
λΆμμ μ λ ¬μ΄λ―λ‘ λμΌν κ°μ μμκ° λ³΄μ₯λμ§ μμ
ν μ λ ¬