π§π»βπ« μλ£κ΅¬μ‘°
πμ€ν
- λ¨Όμ λ€μ΄κ° λ°μ΄ν°κ° λμ€μ λμ€λ κ²μ΄ κ·μΉμ΄λ€.
μΌμ μνμμ μλ₯Ό λ€μ΄λ³΄μλ©΄, μλ λ² μ΄ν°λ μ§νμ² λ²μ€λ₯Ό νκ³ λ΄λ¦΄ λ λ¦κ² λ€μ΄κ° μ¬λμ΄ λ¨Όμ λμ€κ² λλ κ²½μ°λ₯Ό μ΄ μ€ν
μ΄λΌλ κ°λ
μ λΉμ ν΄λ³Ό μ μλ€.
μΆμ μλ£ν
λ¨Όμ , μΆμμλ£νμ κΈ°λ₯μ ꡬν λΆλΆμ λνλ΄μ§ μκ³ μμν κΈ°λ₯μ΄ λ¬΄μμΈμ§ λμ΄ν κ²μ μΆμ μλ£νμ΄λΌκ³ νλ€.
μ€νμ μΆμ μλ£ν
- push λ°μ΄ν° μ½μ
- pop λ°μ΄ν° μ κ±°
- peek λ°μ΄ν° μ°Έμ‘°
- isEmpty λΉμλμ§ μ²΄ν¬
pushλ‘ νμ¬κΈ μ€νμ λ°μ΄ν°λ€μ΄ μμΈλ€. κ·Έλ¦¬κ³ pop ν¨μλ‘ μΈν΄ λ¦κ² λ€μ΄μ¨ λ°μ΄ν°κ° λ¨Όμ λκ°λ€.
πν
- λ¨Όμ λ€μ΄κ° λ°μ΄ν°κ° λ¨Όμ λμ€λ κ²μ΄ κ·μΉμ΄λ€.
μ€νκ³Όμ λ°λλλ κ°λ
μ΄λΌκ³ 보면λλ€.
μΌμ μνλ‘ μλ₯Ό λ€μ΄λ³΄λ©΄, λ§νΈμμ μ€μ μμ κ³μ°ν λ λ¨Όμ μ¨ μλμ λ¨Όμ κ³μ°νλ κ²½μ°λΌκ³ 보면 λλ€. νλ μ΄μ체μ λ‘μ μμλ‘λ λ³Ό μ μλ€. μ΄μ체μ μ λ¨Όμ λ€μ΄μ¨ νλ‘μΈμ€λ₯Ό λ¨Όμ μ²λ¦¬ν΄μ£Όλ κ²μ΄λ€.
νμ μΆμ μλ£ν
- push λ°μ΄ν° μ½μ
- Shift λ°μ΄ν° μ κ±°
- enqueue λ°μ΄ν° μ½μ
- dequeue λ°μ΄ν° μ κ±°
- front λ°μ΄ν° μ°Έμ‘°
- isEmpty λΉμλμ§ νμΈ
λ°μ΄ν°κ° μ½μ
, μμ λ λ μ΄μ λ
Έλλ₯Ό μλ‘ μ½μ
ν λ
Έλλ‘ μ€μ νλ€. κ·Έλ¦¬κ³ headμ μ½μ
νλ κ²½μ°μ tailμ μ½μ
νλ κ²½μ° κ·Έ μΈ μμΉμ μ½μ
νλ κ²½μ°μ μ½λλ‘ κ΅¬λΆνμ¬ μ§ λ€.
πλ±
- μ€νκ³Ό νλ₯Ό μ§¬λ½ μν¨ μμ λ‘μ΄ μλ£κ΅¬μ‘°μ΄λ€.
λ±μ μΆμ μλ£ν
- printAll : λͺ¨λ λ°μ΄ν°λ₯Ό μΆλ ₯νλ€.
- addFirst : headμ λ°μ΄ν°λ₯Ό μ½μ
νλ€.
- removeFirst : headμμ λ°μ΄ν°λ₯Ό μ κ±°νλ€.
- addLast : tailμ λ°μ΄ν°λ₯Ό μ½μ
νλ€.
- removeLast : tailμμ λ°μ΄ν°λ₯Ό μ κ±°νλ€.
- isEmpty : λΉμλμ§ νμΈ
πν΄μν
μ΄λΈ
- ν΄μ ν
μ΄λΈμ ν΄μμ ν
μ΄λΈμ΄ ν©μ³μ§ μλ£κ΅¬μ‘° (keyμ value κ°μ΄λΌκ³ 보면 λ¨)μ΄λ€. λ§μΌ μΆ©λμ΄ λ°μνλ€λ©΄ μΈλ±μ€λ€μ μ°κ²°λ¦¬μ€νΈλ‘ μ€λ³΅λ κ°λ€ λ λ€ μ μ₯μνλ€.
ν΄μν
μ΄λΈμ μΆμ μλ£ν
- set : keyμ valueμ λ°μ΄ν°λ₯Ό μ½μ
νλ€.
- get : keyμ valueμ λ°μ΄ν°λ₯Ό μ½μ΄μ€λ€.
- remove : keyμ valueμ λ°μ΄ν°λ₯Ό μ κ±°νλ€.
ν΄μν
μ΄λΈμ μ₯μ
- λΉ λ₯Έ λ°μ΄ν° μ½κΈ°, μ½μ
, μμ
λ¨μ
- λ©λͺ¨λ¦¬λ₯Ό λ§μ΄ μ°¨μ§νλ€.
- ν΄μ ν¨μμ λ°λΌ 곡κ°μ λλΉκ° κ·Ήλνλ μλ μκ³ μ‘°κΈ λν μλ μλ€.
- μ’μ ν΄μ ν¨μμ ꡬνμ νμλ€.
πμ
- λ°μ΄ν°μ μ€λ³΅μ νμ©νμ§ μλ μλ£κ΅¬μ‘°μ΄λ€.
- νλ‘κ·Έλλ°μ νλ€κ° μ€λ³΅λμ§ μλ κ°μ μ μ₯νκ³ μΆλ€λ©΄ μ
μ μ΄μ©νλ©΄ λλ€. μ
μ ν΄μ ν
μ΄λΈμ μ΄μ©νκΈ° λλ¬Έμ μ½κ² ꡬνν μ μλ€.
- keyκ°λ§ μ¬μ©νμ¬ κ΅¬νν μ μλ€.
μ
μ μΆμ μλ£ν
- add(data) : keyμ valueμ λ°μ΄ν°λ₯Ό μ½μ
νλ€.
- isContain(data) : λ°μ΄ν° 체ν¬
- remove(data) : keyμ valueμ λ°μ΄ν°λ₯Ό μ κ±°νλ€.
μ κ΄νΈμμ dataλ 맀κ°λ³μλ₯Ό λ»νλ€.
- clear() : μ
μ λΉμ°κΈ°
- isEmpty() : μ
μ΄ λΉμλμ§ μ²΄ν¬
- printAll() : λͺ¨λ λ°μ΄ν° μΆλ ₯