β 1. μλ£μ μ 보
(1) μλ£μ κ°κ³΅ λ° κ²°κ³Ό

- P (process: νλ‘μΈμ€)
- D (data: μλ£, λ°μ΄ν°)
- I (information: μ 보)
- νλ‘μΈμ€μ μλ£λ₯Ό λ£μΌλ©΄ μ 보λ₯Ό μ»κ² λλ€.
- μ»΄ν¨ν°μ κ·Όλ³Έμ μΈ λͺ©μ μ μλ£λ₯Ό μ²λ¦¬νμ¬ μ΅μ’ μ μΌλ‘ μ 보λ₯Ό μ 곡ν΄μ£Όλ κ²μ΄λ€.
(2) μλ£μ μ μ
- νμ€ μΈκ³μμ κ΄μ°°μ΄λ μΈ‘μ μ ν΅ν΄μ μμ§λ κ°μ΄λ μ¬μ€
- μ°λ¦¬μ μνμμ μ€μ λ‘ λ§μ§ μ μκ±°λ λ³Ό μ μλ κ²(κΈΈμ΄, 무κ², λΆνΌ λ±μ μΈ‘μ ν μ μλ λμ)μ λν΄μ 물리μ μΈ λ¨μλ‘ νννμ¬ μ»μ΄λΌ μ μλ λ΄μ©
- μ½κ²λ§ν΄, μλ£λ λ μ΄μ μͺΌκ°μ§μ§ μλ μμ λ°μ΄ν°μ΄λ€.
(3) μ 보μ μ μ
- μλ£κ° κ°κ³΅μ΄ λμ΄μ μ μλ―Έν ννλ‘ λ³νμ΄ λμ΄ μ κ³΅μ΄ λλ κ²μ μ 보λΌκ³ νλ€.
- μ½κ²λ§ν΄, μλ£κ° 2κ° μ΄μ μλ‘ μνΈμμ©μ ν΅ν΄ μ»κ² λλ μ μλ―Έν λ°μ΄ν°μ΄λ€.
- μ¦, μ 보λ₯Ό μͺΌκ°μ μλ£λ₯Ό μ»μ μ μλ€λ©΄ κ·Έκ²μ μ λ³΄κ° λλ κ²μ΄λ€.
β 2. μΆμνμ κ°λ
- μΆμνλ κ°μ²΄μ 곡ν΅μ μΈ νΉμ§ λΆλΆμ κ°μ§κ³ μ¬μ©μκ° λ³΄κΈ° νΈνκ² νννκ²μ μλ―Ένλ€.
- μ½κ²λ§ν΄, μ§νμ² λ Έμ λ κ°μ κ²½μ°μλ μ€μ μ§λμ μμΉμ λ€λ₯΄μ§λ§ ν λμ λ€μ΄μ€κΈ° λλ¬Έμ 보기 μ’μ.
- μΆμνμ κ·Όλ³Έμ μΈ λͺ©μ μΌλ‘ μΆμνλ₯Ό ν΅ν΄ μμ¬μν΅μ μλ§νκ² νκΈ° μν΄μλΌκ³ 보λ κ²½μ°λ μλ€.
(1) μλ£μ μΆμν
- 물리μ μ΄λ©° μ κΈ°μ μΈ λμκ³Όλ 무κ΄νκ² μλ£λ₯Ό μκ°νκ³ λ°λΌλ³΄λ μ¬λμ μμ
- μ½κ²λ§ν΄, λ©λͺ¨λ¦¬ νΈλμ§μ€ν°μ μν΄ μλ£κ° μ μ₯μ΄ λ ν λ° μ΄λ νΈλμ§μ€ν°λ 0κ³Ό 1 μ΄μ§μ½λλ‘ ννμ΄ λλ€.
- μ΄λ νΈλμ§μ€ν° μνλ κ·Έλ₯ μμμ λ°μ΄ν° μ μ₯μμΌ λΏ, "μ€ν", "νΈλ¦¬" κ°μ κ°λ μ μ ν μλ μνμ΄λ€.
- μ¦, 물리μ μΌλ‘λ κ·Έμ μ£Όμκ° λΆμ λΉνΈμ μ§ν©μ΄ μ‘΄μ¬ν λΏμ΄λ€.
- λ€μν λμμ μ»΄ν¨ν°μμ μ μ₯νκ³ μ²λ¦¬νκΈ° μν΄ κ·Έ λμλ€μ μλ―Έμ ꡬ쑰μ λν΄μ 곡ν΅μ νΉμ§λ§μ λ½μ μ μν κ²
- μ»΄ν¨ν° λ΄λΆμ μ΄μ§μμ νν λ°©λ², μ μ₯ μμΉ λ±μ ν¬ν¨λμ§ μκ³ λ¨μνκ² κ°λ°μμ λ¨Έλ¦Ώμμ κ·Έλ¦Όμ 그리λ κ²μ²λΌ κ°λ ννμ¬ κ°λ°μλ€ μ¬μ΄μ μμ¬λ₯Ό μ½κ² μ λ¬νκΈ° μν΄ μ¬μ©λλ λ°©λ²
(2) μ 리
- μλ£κ° μλ£μ μΆμνλ₯Ό κ±°μΉκ² λλ©΄ μλ£κ΅¬μ‘°κ° λλ€.
- μμ: νμ - μ΄λ¦, νλ² λ± μ΄λ¬ν ꡬ쑰 λν μλ£κ΅¬μ‘°λ‘ λ³Ό μ μλ€.
- μλ£μ μΆμνλ κ²°κ΅μ μλ£μ 곡ν΅μ μΈ νΉμ§μ λ½μμ μΆμνλ₯Ό ν κ²
- μ΄λ¬ν ꡬ쑰λ₯Ό μκ³ λ¦¬μ¦μμ μ¬μ©μ νλ κ²μ΄λ€.
- λν μλ£μ μΆμνλ κ°λ μ μΆμνμ ꡬνμ μΆμνλ‘ λ³Ό μλ μμ κ² κ°μ
- κ°λ μ μΆμνλ νμ€ μΈκ³μ 볡μ‘ν κ°μ²΄λ₯Ό λ¨μνν΄μ λ°μ΄ν°λ‘ νννλ κ²μ΄κ³ ꡬνμ μΆμνλ ν΄λΉ κ°λ μ μΆμνλ₯Ό μ€μ λ©λͺ¨λ¦¬μ λ¨μν μ ꡬ쑰μ λ Όλ¦¬μ κ΅¬μ‘°μΈ μλ£κ΅¬μ‘°λ₯Ό λ§μμ΄ κ² μ΄λΌκ³ ν μ μμ.
β 3. μλ£κ΅¬μ‘°μ μκ³ λ¦¬μ¦
(1) μλ£κ΅¬μ‘°
- μΆμνλ₯Ό ν΅ν΄ μκ³ λ¦¬μ¦μμ μ¬μ©ν μλ£μ λ Όλ¦¬μ κ΄κ³λ₯Ό ꡬ쑰νν κ²
- μλ£μ μΆμνμ ꡬ쑰νκ° μ μ ν μ΄λ£¨μ΄μ§μ§ λͺ»νλ©΄ μννΈμ¨μ΄λ λΉν¨μ¨μ μΌλ‘ μνλκ±°λ μννΈμ¨μ΄μ νμ₯μ±μ λ¬Έμ κ° μκΈΈ μ μμ.
- κ²°λ‘ μ λ°μ§κ³ 보면 κ°μ²΄, λ³μλ μλ£κ΅¬μ‘°λ‘ λ³Ό μ μλ€.
- μκ³ λ¦¬μ¦μ μλ£λ₯Ό μ²λ¦¬νκ³ λ¬Έμ λ₯Ό ν΄κ²°νλ μ μ°¨ λλ λ°©λ²μ μλ―Ένλ©°, λ°μ΄ν° μ‘°μκ³Ό μ°μ°μ μλ―Ένλ€.
- μλ£κ΅¬μ‘°λ μλ£λ₯Ό ν¨μ¨μ μΌλ‘ μ μ₯νκ³ μ‘°μ§ννλ ꡬ쑰λ₯Ό μλ―Ένλ©° λ°μ΄ν° 보κ΄κ³Ό κ΄κ³κ° μλ€.
- μ 리νλ©΄ μλ£κ΅¬μ‘°λ λ°μ΄ν°μ ννμ μ μ₯ λ°©μ, μκ³ λ¦¬μ¦μ λ°μ΄ν°μ μ²λ¦¬ μ μ°¨λ₯Ό μλ―Ένλ€.
(2) μκ³ λ¦¬μ¦
- μ»΄ν¨ν°μκ² μΌμ μν€κΈ° μν (μΆμνλ) λͺ λ Ήμ΄μ μ°μλ λ©μ΄λ¦¬ ( λͺ λ Ήμ μΆμνλ‘ λ³΄λ©΄ λλ€. )
- μ 리νλ©΄, μλ£κ΅¬μ‘°μ κ΄λ ¨ν΄μ μ€λͺ νλ©΄ μλ£κ΅¬μ‘° μμμ λ°μ΄ν°λ₯Ό μ²λ¦¬νκ³ λ¬Έμ λ₯Ό ν΄κ²°νλ λ°©λ²μΌλ‘λ λ³Ό μ μλ€.
- μλ£κ΅¬μ‘°λ₯Ό μ¬μ©νλ μ£Όμ²΄κ° μκ³ λ¦¬μ¦μ΄λΌκ³ 보면 λλ€.
(3) μλ£κ΅¬μ‘°μ μκ³ λ¦¬μ¦μ μΆμν/ꡬ체ν
- μ λ ₯κ°μ λ¨Έλ¦Ώμμ μΆμνλ νν(μλ£κ΅¬μ‘°)λ‘ κ΅¬μ‘°ννκ³ , μνλμ΄μΌ ν λͺ λ Ήμ΄λ₯Ό λ¨Έλ¦Ώμμμ μΆμνλ νν(μκ³ λ¦¬μ¦)μΌλ‘ 체κ³νλ¨
- νλ‘κ·Έλλ° μΈμ΄: μλ£κ΅¬μ‘°μ μκ³ λ¦¬μ¦μ ꡬ체ννλ λ°©λ²
(4) μΆμ μλ£ν
- μλ£κ΅¬μ‘°μ μκ³ λ¦¬μ¦μ μ€κ°μ―€μ μλ μλ£μ 볡μ‘ν λ Όλ¦¬μ μ±κ²©μ μ μνλ νμ
- μλ£κ°μ μ§ν©κ³Ό μ°μ° μ§ν©μ λν μ μλ‘ κ΅¬μ±λλ©°, μλ£κ΅¬μ‘°λ₯Ό νννλ κ°μ₯ λνμ μΈ λ°©λ²μ΄λ€.
- μ½κ²λ§ν΄, μ μ°νμμ μ¬μ©λλ μλ£κ΅¬μ‘°λ₯Ό νννλ(곡ν΅μ μλ―Έλ₯Ό μΆμΆνμ¬ μ λ¬νλ)λ°©λ²μ΄λ€.
- μ 리νλ©΄ μλ£μ μΆμνλ₯Ό μνμ μΌλ‘ νννλ κ²μ΄ μΆμ μλ£νμ΄λΌκ³ λ³Ό μ μλ€.
- μ΄ μΆμμλ£νμ νλ‘κ·Έλλ° μΈμ΄μ μ»΄νμΌλ¬ μν΄μ νλ‘κ·Έλλ° μ½λλ‘ λ³νμ΄ λ¨.
- μ΄ μΆμμλ£ν μ체λ μλ£κ΅¬μ‘°μ κ°λ μ μ€κ³λΌμ CPUκ° μ΄ν΄νμ§ λͺ»νλ―λ‘, μ»΄νμΌλ¬κ° νλ‘κ·Έλλ° μΈμ΄λ‘ μμ±λ ꡬν체(Java-ArrayList λ±)λ₯Ό κΈ°κ³κ° μ΄ν΄ν μ μλ μ½λλ‘ λ°κΏμ μ€ν κ°λ₯νκ² λ§λ€μ΄ μ€λ€.
(5) μ 리

ArrayList<Integer> list = new ArrayList<>(); // μλ£κ΅¬μ‘°
list.add(5) // μκ³ λ¦¬μ¦
list.remove(0) // μκ³ λ¦¬μ¦
- μλ° μ½λλ₯Ό μμλ‘ λ€λ©΄, ArrayList μ체λ μλ£κ΅¬μ‘°μ΄κ³ λ΄λΆμμ add, remove κ°μ μλ£κ΅¬μ‘°λ₯Ό μ‘°μνλ κ²μ μκ³ λ¦¬μ¦μ.
- μΆμ μλ£νμ κ°λ μ μ€κ³μ΄κ³ , μλ£κ΅¬μ‘°λ μ΄ μΆμ μλ£νμ΄ μ€μ λ‘ κ΅¬νλ κ²μ μλ―Έν¨. ( ex: ArrayList... )
β 4. μκ³ λ¦¬μ¦μ κ°λ κ³Ό 쑰건
(1) μκ³ λ¦¬μ¦κ³Ό νλ‘κ·Έλ¨
- μ»΄ν¨ν°μκ² μΌμ μν€κΈ° μν (μΆμνλ) λͺ λ Ήμ΄μ μ°μλ λ©μ΄λ¦¬ ( λͺ λ Ήμ μΆμνλ‘ λ³΄λ©΄ λλ€. )
- μ¬λ(κ°λ°μ)μ΄ μ»΄ν¨ν°μκ² μΌμ μν€κΈ° μν μ¬λμ μλμ λͺ λ Ήμ μ λ¬ν΄ μ€ μ μλ λ°©λ²(μΈμ΄/κΈ)
- μ»΄ν¨ν°κ° μνν λͺ λ Ήμ΄μ μ ν μ§ν©μ΄ μ¬λμ λ¨Έλ¦Ώμμ μΆμνλμ΄ μ‘΄μ¬νλ κ²
- μ»΄ν¨ν°μκ² μν¬ μΌ(νλ‘κ·Έλ¨)μ λ¨Έλ¦Ώμμμ μΆμνμμΌμ λλ΅μ μΌλ‘ μμν΄ λμ κ²
- μ 리νλ©΄, μλ£κ΅¬μ‘°μ κ΄λ ¨ν΄μ μ€λͺ νλ©΄ μλ£κ΅¬μ‘° μμμ λ°μ΄ν°λ₯Ό μ²λ¦¬νκ³ λ¬Έμ λ₯Ό ν΄κ²°νλ λ°©λ²μΌλ‘λ λ³Ό μ μλ€.
- μλ£κ΅¬μ‘°λ₯Ό μ¬μ©νλ μ£Όμ²΄κ° μκ³ λ¦¬μ¦μ΄λΌκ³ 보면 λλ€.
(2) μκ³ λ¦¬μ¦μ 쑰건
- μΆλ ₯: μκ³ λ¦¬μ¦μ μννκ³ λλ©΄ μ μ΄λ ν κ°μ§ κ²°κ³Όλ₯Ό μμ±ν΄μΌ ν¨
- μ ν¨μ±: λ°λμ μ€ν κ°λ₯ν΄μΌ ν΄μΌν¨
- μ λ ₯: μΈλΆ/λ΄λΆ μ λ ₯κ°μ μ νν΄μΌ νλ©°, λ°λμ μ λ ₯ ννκ° μ μλ μ μμ΄μΌν¨
- λͺ νμ±: κ° λͺ λ Ήλ€μ λͺ ννκ³ μ λ§€λͺ¨νΈνμ§ μμμΌ ν¨
- μ νμ±: λ°λμ μ’ λ£κ° λͺ ννκ² μ μλμ΄ μμ΄μΌ ν¨
β 5. μκ³ λ¦¬μ¦μ μ±λ₯
(1) μκ³ λ¦¬μ¦μ μ€νμκ° λΆμ
- μκ³ λ¦¬μ¦μ μ€ννλλ° νμν μμΈ‘ μ€νμκ°μ μΆμ νμ¬ μκ³ λ¦¬μ¦μ μ±λ₯μ λΆμ
[ μ€ν μκ°μ μμΈ‘ ]
- μκ³ λ¦¬μ¦μ μ€ν νμλ₯Ό O(n)μ΄λΌκ³ νν ( big o(n) )
- κ°μ O(n)μ κ°μ§λ€κ³ ν΄μ κ°μ μ€ν μκ°μ κ°λ κ²μ΄ μλλΌ μ€ν μκ°μ μ μ¬ν μ¦κ° κ²½ν₯μ λν νν λ°©λ²
(2) μκ³ λ¦¬μ¦μ μ€νλ©λͺ¨λ¦¬ λΆμ
- μκ³ λ¦¬μ¦μ μ€ννλλ° νμν 곡κ°(λ©λͺ¨λ¦¬)μ μΆμ νμ¬ μκ³ λ¦¬μ¦μ μ±λ₯μ λΆμν¨ ( κ·Όλ° μμ¦ λ©λͺ¨λ¦¬ κ°κ²© νλ½ μ μμ )
[ μ€ν λ©λͺ¨λ¦¬μ μμΈ‘ ]
- μκ³ λ¦¬μ¦μ κ³΅κ° λ³΅μ‘λ(space complexity)λ νλ‘κ·Έλ¨μ μ€νμμΌμ μλ£νλ λ° νμν μ΄ λ©λͺ¨λ¦¬ 곡κ°
- κ³ μ 곡κ°: νλ‘κ·Έλ¨μ ν¬κΈ°λ μ μΆλ ₯μ νμμ κ΄κ³μμ΄ μ»΄νμΌ μμ κ²°μ λμ΄ νλ‘κ·Έλ¨μ μ€νμ΄ λλ λκΉμ§ κ³ μ μ μΌλ‘ νμν λ©λͺ¨λ¦¬ 곡κ°μ μλ―Ένλ€.
- κ°λ³ 곡κ°: νλ‘κ·Έλ¨μ μ€ν κ³Όμ μμ λμ μΌλ‘ ν λΉλμ΄μΌ νλ μλ£ κ΅¬μ‘°μ λ³μλ€μ μν΄ νμν λ©μΈλ©λ―Έλ‘ 곡κ°
- Sp = Sc + Se ( 곡κ°λ³΅μ‘λ = κ³ μ κ³΅κ° + κ°λ³κ³΅κ° ) -> 곡κ°λ³΅μ‘λ = μ΄ λ©λͺ¨λ¦¬ 곡κ°
(3) μκ³ λ¦¬μ¦μ μ±λ₯ μΈ‘μ
- μ»΄ν¨ν°κ° μ€μ λ‘ νλ‘κ·Έλ¨μ μ€ννλλ° κ±Έλ¦¬λ μκ°μ μΈ‘μ νμ¬ μκ³ λ¦¬μ¦μ μ±λ₯μ μΈ‘μ
[ μ€ν μκ°μ μΈ‘μ ]
- μ€μ λ‘ μ€ν μκ°μ μκ³λ‘ μ°λ€λ κ²μ μλ―Έ
- μ€μ λ‘ μ€νλ μ μλ νλ‘κ·Έλ¨(μ€ν νμΌ)μ΄ μμ΄μΌ νλ μ‘°κ±΄μ΄ μμ.
- μμ€ν μκ³λ₯Ό μ΄μ©μ ν¨.
- κ°μ νλ‘κ·Έλ¨μ΄μ§λ§ μκ³ λ¦¬μ¦μ΄ λ€λ₯Έ Aμ B ꡬν λ νλ‘κ·Έλ¨μ μ€μ λ‘ κΈ°κ°μ λ€μ¬ λλ €λ³΄λ©΄μ μΈ‘μ μ νλ λ°©μ
- λ¬Έμ λ μ¬λ¬ μκ³ λ¦¬μ¦μΌλ‘ λ§λ€μ΄ λμ΄μΌ νλ€λ λ§€μ° λΉμ©μ΄ λ§μ΄ λλ μμ μ. ( λ§μ΄ μλλ μμ )
- κ·Έλμ μ±λ₯ μΈ‘μ 보λ€λ λΆμμ νλ λ°©μμ μ±νν¨. μ¦, O(n) - μνμ λͺ¨λΈμ μ¬μ© ( λλ΅ μ΄λμ λ μ¦κ°νκ² λ€ μ΄λ° λλ )
'πλ°©μ‘ν΅μ λνκ΅ > π’μλ£κ΅¬μ‘°' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[μλ£κ΅¬μ‘°] 4κ° - ν (0) | 2025.09.02 |
---|---|
[μλ£κ΅¬μ‘°] 3κ° - μ€ν (2) | 2025.08.25 |
[μλ£κ΅¬μ‘°] 2κ° - λ°°μ΄ (3) | 2025.08.22 |