[자료ꡬ쑰] 1κ°• - μžλ£Œκ΅¬μ‘°λž€ 무엇인가?

2025. 8. 21. 19:20Β·πŸŽ“λ°©μ†‘ν†΅μ‹ λŒ€ν•™κ΅/πŸ”’μžλ£Œκ΅¬μ‘°

βœ… 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
'πŸŽ“λ°©μ†‘ν†΅μ‹ λŒ€ν•™κ΅/πŸ”’μžλ£Œκ΅¬μ‘°' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€
  • [자료ꡬ쑰] 4κ°• - 큐
  • [자료ꡬ쑰] 3κ°• - μŠ€νƒ
  • [자료ꡬ쑰] 2κ°• - λ°°μ—΄
junbin2
junbin2
java.lang.NullPointerException
  • junbin2
    bin's Development Diary
    junbin2
  • 전체
    였늘
    μ–΄μ œ
    • 전체보기 (169)
      • πŸŽ“λ°©μ†‘ν†΅μ‹ λŒ€ν•™κ΅ (35)
        • βš™οΈμ»΄ν“¨ν„°μ˜ 이해 (11)
        • πŸ’»μ»΄ν“¨ν„°κ³Όν•™ 개둠 (5)
        • πŸ”’μžλ£Œκ΅¬μ‘° (4)
        • πŸŒμœ λΉ„μΏΌν„°μŠ€ μ»΄ν“¨νŒ… (11)
        • πŸ›οΈμ„Έκ³„μ˜μ •μΉ˜μ™€κ²½μ œ (3)
        • πŸ–₯️컴퓨터과학과 (1)
      • πŸ› οΈBackend (58)
        • πŸ“šλ°±μ—”λ“œ 곡뢀 (4)
        • β˜•Java (23)
        • 🌳Spring (13)
        • βš™οΈC (2)
        • ⚑Python (13)
        • JavaScript (1)
        • πŸ›’οΈDatabase (0)
        • Algorithm Problem Solving (2)
      • 🌐 Network (7)
        • πŸ“œHTTP (7)
      • πŸš€DevOps (1)
      • β›ΊμŠ€νŒŒλ₯΄νƒ€μ½”λ”©ν΄λŸ½ (64)
      • 정보 (2)
      • 정리가 ν•„μš”ν•œ κΈ€ (2)
  • λΈ”λ‘œκ·Έ 메뉴

    • ν™ˆ
    • νƒœκ·Έ
    • λ°©λͺ…둝
  • 링크

    • GitHub
  • 곡지사항

  • 인기 κΈ€

  • νƒœκ·Έ

    μž…μΆœλ ₯
    μœ λΉ„μΏΌν„°μŠ€ μ»΄ν“¨νŒ…κ°œλ‘ 
    Python
    Java
    λ°©μ†‘λŒ€
    λ°©ν†΅λŒ€
    ν΄λΌμš°λ“œ
    μ»΄ν“¨ν„°μ˜ 이해
    컴파일러
    파이썬
    자료ꡬ쑰
    운영체제
    Spring Framework
    spring
    μŠ€ν”„λ§
    λ°©μ†‘ν†΅μ‹ λŒ€ν•™κ΅
    λ°°μ—΄
    μœ λΉ„μΏΌν„°μŠ€ μ»΄ν“¨νŒ…
    μœ λΉ„μΏΌν„°μŠ€
    μžλ°”
  • 졜근 λŒ“κΈ€

  • 졜근 κΈ€

  • hELLOΒ· Designed Byμ •μƒμš°.v4.10.1
junbin2
[자료ꡬ쑰] 1κ°• - μžλ£Œκ΅¬μ‘°λž€ 무엇인가?
μƒλ‹¨μœΌλ‘œ

ν‹°μŠ€ν† λ¦¬νˆ΄λ°”