μλ£ κ΅¬μ‘°μ λΆλ₯
μλ£ κ΅¬μ‘°μ νμ©
μ ν μλ£κ΅¬μ‘° : μΌλ ¬λ‘ λμ΄λ μλ£λ₯Ό μλ―Έ
리μ€νΈ
μ€ν
리μ€νΈμ νμͺ½ λμμλ§ μλ£μ μ½μ κ³Ό μμ κ° μ΄λ£¨μ΄μ§λ μλ£ κ΅¬μ‘°μ΄λ€.
κ°μ₯ λμ€μ μ½μ λ μλ£κ° κ°μ₯ λ¨Όμ μμ λλ νμ μ μΆ(LIFO) λ°©μμ΄λ€.
λ§μ§λ§ μ½μ λ μλ£μ μμΉλ₯Ό Top, κ°μ₯ λ¨Όμ μ½μ λ μλ£ μμΉλ₯Ό Bottom
μ€ν κ°λ : λ©λͺ¨λ¦¬μμμ νλ‘κ·Έλ¨μ λ³΅κ· μ£Όμμ λ³μ μ¬μ΄μ νΉμ κ°μ μ μ₯ν΄ λμλ€κ° κ·Έ κ°μ΄ λ³κ²½λμμ κ²½μ° μ€λ²νλ‘μ° μνλ‘ κ°μ νμ¬ μ€νμ μ€λ¨
μ€νμ μμ© λΆμΌ
μ€νμ μ½μ μκ³ λ¦¬μ¦ (Push)
if TOP β₯ n then call Stack-Full else TOP β TOP + 1 Stack(TOP) β Data end Insert
μ€νμ μμ μκ³ λ¦¬μ¦ (Pop)
if TOP = 0 then call Underflow else remove Stack(TOP) TOP <- TOP -1
μ€νμ μ€λ²νλ‘ μκ³ λ¦¬μ¦
TOP = TOP +1 If TOP > n Then goto AA else Stack(TOP) <- item
ν(Queue)
λ°ν¬ (Deque)
μ½μ μ λ ¬(Insertion Sort)
μ λ ¬λ νμΌμ μλ‘μ΄ νλμ λ μ½λλ₯Ό μμμ λ°λΌ μ½μ μμΌ μ λ ¬νλ λ°©λ²μ΄λ€.
μ΅μ : $O(n)$ , μ΅μ : $O(n^2)$ , νκ· : $O(n^2)$
λ²λΈ μ λ ¬(Bubble Sort)
μΈμ ν λ°μ΄ν°λ₯Ό λΉκ΅νλ©΄μ κ·Έ ν¬κΈ°μ λ°λΌ λ°μ΄ν°μ μμΉλ₯Ό λ°κΎΈμ΄ μ λ ¬νλ λ°©λ²
νλ² PASS λ§λ€ μ € ν° κ°μ΄ λ€λ‘κ°
μ΅μ : $O(n^2)$ , μ΅μ : $O(n^2)$ , νκ· : $O(n^2)$
μ ν μ λ ¬ (Selection Sort)
n κ°μ λ μ½λ μ€μμ μ΅μκ°μ μ°Ύμ 1st λ μ½λμ λκ³ λλ¨Έμ§ n-1 κ°μ λ μ½λ μ€μμ μ΅μκ°μ μ°Ύμ 2nd μ리μ λλ€.
μ΅μ : $O(n^2)$ , μ΅μ : $O(n^2)$ , νκ· : $O(n^2)$
λ³ν©(ν©λ³) μ λ ¬ (2-Way Merge sort)
ν΅ μ λ ¬ (Quick Sort)
λ μ½λμ λ§μ μλ£ μ΄λμ μμ κ³ νλμ νμΌμ λΆλΆμ μΌλ‘ λλμ΄κ°λ©΄μ μ λ ¬νλ λ°©λ²
ν€λ₯Ό κΈ°μ€μΌλ‘ μμ κ°μ μΌμͺ½, ν° κ°μ μ€λ₯Έμͺ½μ λͺ¨μ΄λλ‘ μλ‘ κ΅ν μν€λ λΆλΆ κ΅ν μ λ ¬λ²
μ΅μ : $O(nlogn)$ , νΌλ²μ μ¬μ©νλ©° μ΅μ μ κ²½μ° : $\frac{n(n-1)}2$ , νκ· : $O(nlogn)$
ν μ λ ¬ (Heap Sort)