๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Daily/Today I Learned

22.08.10_TIL

by ํ˜ธ๋ฐ€์ด 2022. 8. 9.

๐Ÿ“Œ ์ด์ œ ์ปค๋ฆฌํ˜๋Ÿผ ์ค‘ ํ•™์Šต์„ ํ•˜๋Š” ์‹œ๊ฐ„์—์„œ ๋‚จ์€ ๊ฒƒ์€ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฐ–์— ๋‚จ์ง€ ์•Š์•˜๋‹ค. ๋‹ค์–‘ํ•œ ๋‚ด์šฉ์„ ํ•™์Šตํ•˜๊ณ  ๋ฐฐ์šฐ๋ฉด์„œ ๋‚˜์˜ ์‹ค๋ ฅ์— ๋Œ€ํ•ด์„œ ๊นจ๋‹ฌ์•˜๋˜ ์‹œ๊ฐ„์ด์—ˆ๊ณ  ๋งŽ์€ ๊ฒƒ์„ ๋ฐฐ์›€์œผ๋กœ ๋‚˜์˜ ์—ญ๋Ÿ‰์„ ์„ฑ์žฅ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋Š” ๊ณ„๊ธฐ๊ฐ€ ๋˜์—ˆ๋‹ค. ๋‚จ์€ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ•™์Šต๊นŒ์ง€ ๋๋งˆ์น˜๊ณ  ํ”„๋กœ์ ํŠธ์— ๋“ค์–ด๊ฐˆ ๋•Œ ํŒ€์›๋“ค๊ณผ ์›ํ™œํ•œ ํ˜‘์—…์„ ํ†ตํ•ด ์ข‹์€ ๊ฒฐ๊ณผ๋ฅผ ๋‚ณ์„ ์ˆ˜ ์žˆ๋„๋ก ํ•ด๋ณด์ž!!

๐Ÿ“— ์˜ค๋Š˜ ํ•™์Šตํ•œ ๋‚ด์šฉ

์•Œ๊ณ ๋ฆฌ์ฆ˜

  • ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ์ตœ์„ ์˜ ์„ ํƒ
  • ์–ด๋–ค ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ผ๋ จ์˜ ์ ˆ์ฐจ๋ฅผ ์ •์˜ํ•˜๊ณ , ๊ณต์‹ํ™”ํ•œ ํ˜•ํƒœ๋กœ ํ‘œํ˜„ํ•œ ์ผ์ข…์˜ ๋ฌธ์ œ์˜ ํ’€์ด ๋ฐฉ๋ฒ•์„ ์˜๋ฏธํ•œ๋‹ค.

์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๋ช…์‹œ ์กฐ๊ฑด

  • ์ž…๋ ฅ: ์ถœ๋ ฅ์— ํ•„์š”ํ•œ ์ž๋ฃŒ๋ฅผ ์ž…๋ ฅ๋ฐ›์„ ์ˆ˜ ์žˆ์–ด์•ผํ•œ๋‹ค. ๊ผญ ์ž…๋ ฅ์„ ๋ฐ›์ง€ ์•Š์•„๋„ ๋˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜๋„ ์žˆ๋‹ค.
  • ์ถœ๋ ฅ: ์‹คํ–‰์ด ๋˜๋ฉด ์ ์–ด๋„ ํ•œ ๊ฐ€์ง€ ์ด์ƒ์˜ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜๋“œ์‹œ ์ถœ๋ ฅํ•ด์•ผํ•œ๋‹ค.
  • ์œ ํ•œ์„ฑ: ์œ ํ•œํ•œ ๋ช…๋ น์–ด๋ฅผ ์ˆ˜ํ–‰ํ•œ ํ›„, ์œ ํ•œํ•œ ์‹œ๊ฐ„ ๋‚ด์— ์ข…๋ฃŒํ•ด์•ผ ํ•œ๋‹ค.
  • ๋ช…ํ™•์„ฑ: ๊ฐ ๋‹จ๊ณ„๋Š” ๋‹จ์ˆœํ•˜๊ณ  ๋ช…ํ™•ํ•ด์•ผ ํ•˜๋ฉฐ, ๋ชจํ˜ธํ•ด์„œ๋Š” ์•ˆ๋œ๋‹ค.
  • ํšจ์œจ์„ฑ: ๊ฐ€๋Šฅํ•œ ํ•œ ํšจ์œจ์ ์ด์–ด์•ผ ํ•œ๋‹ค. ๋ชจ๋“  ๊ณผ์ •์ด ๋ช…๋ฐฑํ•˜๊ฒŒ ์‹คํ–‰ ๊ฐ€๋Šฅํ•ด์•ผ ํ•˜๋ฉฐ, ์‹คํ–‰ ๊ฐ€๋Šฅ์„ฑ์ด ๋–จ์–ด์ง€๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ํšจ์œจ์ ์ด์ง€ ๋ชปํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ผ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

์‹œ๊ฐ„ ๋ณต์žก๋„ 

์ž…๋ ฅ๊ฐ’์˜ ๋ณ€ํ™”์— ๋”ฐ๋ผ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•  ๋•Œ , ์—ฐ์‚ฐ ํšŒ์ˆ˜์— ๋น„ํ•ด ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„

  • ์‹œ๊ฐ„ ๋ณต์žก๋„ ํ‘œ๊ธฐ ๋ฐฉ๋ฒ•
    • Big-O(๋น…-์˜ค)
      • ๊ฐ€์žฅ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ํ‘œ๊ธฐ๋ฒ•
      • ์ตœ์•…์˜ ๊ฒฝ์šฐ๋ฅผ ๊ณ ๋ คํ•˜์—ฌ ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋˜๋Š” ๊ณผ์ •์—์„œ ์†Œ์š”๋˜๋Š” ์ตœ์•…์˜ ์‹œ๊ฐ„๊นŒ์ง€ ๊ณ ๋ คํ•  ์ˆ˜ ์žˆ๋‹ค.
    • Big-Ω(๋น…-์˜ค๋ฉ”๊ฐ€)
    • Big-θ(๋น…-์„ธํƒ€)

๋น…์˜ค ํ‘œ๊ธฐ๋ฒ• ์‹œ๊ฐ„๋ณต์žก๋„ (feat.codestates)

Big-O ํ‘œ๊ธฐ๋ฒ•์˜ ์ข…๋ฅ˜

  • O(1): Constant complexity
    • ์ž…๋ ฅ๊ฐ’์ด ์ฆ๊ฐ€ํ•˜๋”๋ผ๋„ ์‹œ๊ฐ„์ด ๋Š˜์–ด๋‚˜์ง€ ์•Š๋Š”๋‹ค.
    • ์ž…๋ ฅ๊ฐ’์˜ ํฌ๊ธฐ์™€ ๊ด€๊ณ„์—†์ด ์ฆ‰์‹œ ์ถœ๋ ฅ๊ฐ’์„ ์–ป์–ด๋‚ผ ์ˆ˜ ์žˆ๋‹ค.
  • O(n): linear complexity
    • ์ž…๋ ฅ๊ฐ’์ด ์ฆ๊ฐ€ํ•จ์— ๋”ฐ๋ผ ์‹œ๊ฐ„ ๋˜ํ•œ ๊ฐ™์€ ๋น„์œจ๋กœ ์ฆ๊ฐ€ํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค. (1์ค‘ for๋ฌธ)
  • O(log n): logarithmic complexity
    • O(1) ๋‹ค์Œ์œผ๋กœ ๋น ๋ฅธ ์‹œ๊ฐ„ ๋ณต์žก๋„์ด๋‹ค.
    • Binary Search Tree์™€ ๊ฐ™์€ ์ด๋™ํ•  ๋•Œ๋งˆ๋‹ค ๊ฒฝ์šฐ์˜ ์ˆ˜๊ฐ€ ์ ˆ๋ฐ˜์œผ๋กœ ์ค„์–ด๋“œ๋Š” ๊ตฌ์กฐ์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค.
  • O(n2): quadratic complexity
    • ์ž…๋ ฅ๊ฐ’์ด ์ฆ๊ฐ€ํ•จ์— ๋”ฐ๋ผ ์‹œ๊ฐ„์ด n์˜ ์ œ๊ณฑ์ˆ˜์˜ ๋น„์œจ๋กœ ์ฆ๊ฐ€ํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค. (2์ค‘ for๋ฌธ์ด์ƒ)
  • O(2^n): exponential complexity
    • Big-O ํ‘œ๊ธฐ๋ฒ• ์ค‘ ๊ฐ€์žฅ ๋Š๋ฆฐ ์‹œ๊ฐ„ ๋ณต์žก๋„ ์ด๋‹ค.
    • ๋งค๋ฒˆ ์ ‘๊ทผ์„ ํ•  ๋•Œ๋งˆ๋‹ค ์‹œ๊ฐ„์ด 2๋ฐฐ๋กœ ๋Š˜์–ด๋‚˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค. (๋Œ€ํ‘œ: ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜์—ด)

๊ณต๊ฐ„ ๋ณต์žก๋„

  • ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์ˆ˜ํ–‰๋˜๋Š” ๋ฐ์— ํ•„์š”ํ•œ ๋ฉ”๋ชจ๋ฆฌ์˜ ์ด๋Ÿ‰์„ ์˜๋ฏธํ•œ๋‹ค.
  • ํ”„๋กœ๊ทธ๋žจ์ด ํ•„์š”๋กœ ํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ์‚ฐ์ถœํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค.

Greedy Algorithm (ํƒ์š• ์•Œ๊ณ ๋ฆฌ์ฆ˜)

  • ์„ ํƒ์˜ ์ˆœ๊ฐ„๋งˆ๋‹ค ๋‹น์žฅ ๋ˆˆ์•ž์— ๋ณด์ด๋Š” ์ตœ์ ์˜ ์ƒํ™ฉ๋งŒ์„ ์ฐพ์•„ ์ตœ์ข…์ ์ธ ํ•ด๋‹ต์— ๋„๋‹ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.
  • ํŠน์ง•
    • ํƒ์š•์  ์„ ํƒ ์†์„ฑ(Greedy Choice Property): ์•ž์˜ ์„ ํƒ์ด ์ดํ›„์˜ ์„ ํƒ์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š๋Š”๋‹ค.
    • ์ตœ์  ๋ถ€๋ถ„ ๊ตฌ์กฐ(Optimal Substructure): ๋ฌธ์ œ์— ๋Œ€ํ•œ ์ตœ์ข… ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ๋ถ€๋ถ„ ๋ฌธ์ œ์— ๋Œ€ํ•œ ์ตœ์  ๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์œผ๋กœ ๊ตฌ์„ฑ๋œ๋‹ค.
  • ๋Œ€ํ‘œ๋ฌธ์ œ: ๊ฑฐ์Šค๋ฆ„๋ˆ ๋ฌธ์ œ

Greedy Algorithm ๋ฌธ์ œ ํ•ด๊ฒฐ ๋‹จ๊ณ„

  1. ์„ ํƒ ์ ˆ์ฐจ(Selection Procedure): ํ˜„์žฌ ์ƒํƒœ์—์„œ์˜ ์ตœ์ ์˜ ํ•ด๋‹ต์„ ์„ ํƒํ•œ๋‹ค.
  2. ์ ์ ˆ์„ฑ ๊ฒ€์‚ฌ(Feasibility Check): ์„ ํƒ๋œ ํ•ด๊ฐ€ ๋ฌธ์ œ์˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š”์ง€ ๊ฒ€์‚ฌํ•œ๋‹ค.
  3. ํ•ด๋‹ต ๊ฒ€์‚ฌ(Solution Check): ์›๋ž˜์˜ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ๋Š”์ง€ ๊ฒ€์‚ฌํ•˜๊ณ , ํ•ด๊ฒฐ๋˜์ง€ ์•Š์•˜๋‹ค๋ฉด ์„ ํƒ ์ ˆ์ฐจ๋กœ ๋Œ์•„๊ฐ€ ์œ„์˜ ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•œ๋‹ค.

Algorithm ๊ตฌํ˜„์˜ ๊ธฐ์ดˆ

  • ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ‘ผ๋‹ค? ๋‚ด๊ฐ€ ์ƒ๊ฐํ•œ ๋ฌธ์ œ ํ•ด๊ฒฐ ๊ณผ์ •์„ ์ปดํ“จํŒ… ์‚ฌ๊ณ ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ์ฝ”๋“œ๋กœ ๊ตฌํ˜„ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์„ ํƒํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์˜ ๋ฌธ๋ฒ•์„ ์ •ํ™•ํžˆ ์•Œ๊ณ  ์žˆ์–ด์•ผ ํ•˜๋ฉฐ, ๋ฌธ์ œ์˜ ์กฐ๊ฑด์— ์ „๋ถ€ ๋ถ€ํ•ฉํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์‹ค์ˆ˜ ์—†์ด ๋น ๋ฅด๊ฒŒ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ๋‘์–ด ์—ฐ์Šตํ•ด์•ผํ•œ๋‹ค.

์™„์ „ ํƒ์ƒ‰

  • ๋ชจ๋“  ๋ฌธ์ œ๋Š” ์™„์ „ ํƒ์ƒ‰์œผ๋กœ ํ’€ ์ˆ˜ ์žˆ๋‹ค.
  • ๊ต‰์žฅํžˆ ๋‹จ์ˆœํ•˜๊ณ  ๋ฌด์‹ํ•˜์ง€๋งŒ ๋‹ต์ด ๋ฌด์กฐ๊ฑด ์žˆ๋Š” ๊ฐ•๋ ฅํ•œ ์žฅ์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.
  • ์ฒซ ๋ฒˆ์งธ ๊ทœ์น™์€ ๋งŒ์กฑ์‹œํ‚ฌ ์ˆ˜ ์žˆ์ง€๋งŒ ๋‘ ๋ฒˆ์งธ ๊ทœ์น™์€ ๋งŒ์กฑํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค.

์™„์ „ ํƒ์ƒ‰์„ ํ•˜๋Š” ๋ฐฉ๋ฒ•

  • Brute Force(์กฐ๊ฑด/๋ฐ˜๋ณต์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด๊ฒฐ), ์žฌ๊ท€, ์ˆœ์—ด, DFS/BFS ๋“ฑ

Brute Force (๋ฌด์ฐจ๋ณ„ ๋Œ€์ž… ๋ฐฉ๋ฒ•)

  • ์ˆœ์ˆ˜ํ•œ ์ปดํ“จํŒ… ์„ฑ๋Šฅ์— ์˜์กดํ•˜์—ฌ ๋ชจ๋“  ๊ฐ€๋Šฅ์„ฑ์„ ์‹œ๋„ํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.(์™„์ „ํƒ์ƒ‰)
  • ๊ณต๊ฐ„, ์‹œ๊ฐ„ ๋ณต์žก๋„์˜ ์š”์†Œ๋ฅผ ๊ณ ๋ คํ•˜์ง€ ์•Š๊ณ  ์ตœ์•…์˜ ์‹œ๋‚˜๋ฆฌ์˜ค๋ฅผ ์ทจํ•˜๋”๋ผ๋„ ์ •๋‹ต์„ ์ฐพ์œผ๋ ค๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.

Brute Force๊ฐ€ ์‚ฌ์šฉ๋˜๋Š” ๊ฒฝ์šฐ

  • ํ”„๋กœ์„ธ์Šค ์†๋„๋ฅผ ๋†’์ด๋Š”๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค๋ฅธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์—†์„ ๋•Œ
  • ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ์—ฌ๋Ÿฌ ์†”๋ฃจ์…˜์ด ์žˆ๊ณ  ๊ฐ ์†”๋ฃจ์…˜์„ ํ™•์ธํ•ด์•ผ ํ•  ๋•Œ

Brute Force์˜ ํ•œ๊ณ„

  • ๋ฌธ์ œ๊ฐ€ ๋ณต์žกํ•ด์งˆ์ˆ˜๋ก ๊ธฐํ•˜๊ธ‰์ˆ˜์ ์œผ๋กœ ๋งŽ์€ ์ž์›(์‹œ๊ฐ„, ์ปดํ“จํŒ…)์„ ํ•„์š”๋กœ ํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๋  ์ˆ˜ ์žˆ๋‹ค.

Brute Force๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฌธ์ œ

  • ์ˆœ์ฐจ ๊ฒ€์ƒ‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜ (Sequential Search)
    • ๋ฐฐ์—ด์•ˆ์— ํŠน์ • ๊ฐ’์ด ์กด์žฌํ•˜๋Š”์ง€ ๊ฒ€์ƒ‰ํ•  ๋•Œ ์ธ๋ฑ์Šค 0๋ถ€ํ„ฐ ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค๊นŒ์ง€ ์ฐจ๋ก€๋Œ€๋กœ ๊ฒ€์ƒ‰ํ•œ๋‹ค.
  • ๋ฌธ์ž์—ด ๋งค์นญ ์•Œ๊ณ ๋ฆฌ์ฆ˜ (Brute Force String Matching)
    • ๊ธธ์ด๊ฐ€ n์ธ ์ „์ฒด ๋ฌธ์ž์—ด๊ณผ ๊ธธ์ด๊ฐ€ m์ธ ๋ฌธ์ž์—ด ํŒจํ„ด์„ ํฌํ•จํ•˜๋Š”์ง€๋ฅผ ๊ฒ€์ƒ‰ํ•œ๋‹ค.
  • ์„ ํƒ ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ (Selection Sort)
    • ์ „์ฒด ๋ฐฐ์—ด์„ ๊ฒ€์ƒ‰ํ•˜์—ฌ ํ˜„์žฌ ์š”์†Œ์™€ ๋น„๊ตํ•˜๊ณ  ์ปฌ๋ ‰์…˜์ด ์™„์ „ํžˆ ์ •๋ ฌ๋  ๋–„๊นŒ์ง€ ํ˜„์žฌ ์š”์†Œ๋ณด๋‹ค ๋” ์ž‘๊ฑฐ๋‚˜ ํฐ ์š”์†Œ(์˜ค๋ฆ„์ฐจ์ˆœ, ๋‚ด๋ฆผ์ฐจ์ˆœ)๋ฅผ ๊ตํ™˜ํ•˜๋Š” ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค.
  • ๋ฒ„๋ธ” ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ (Bubble Sort)
  • BFS, DFS
  • DP

Dynamic Programming (DP, ๋™์  ๊ณ„ํš๋ฒ•)

  • ํ•˜๋‚˜์˜ ๋ฌธ์ œ๋Š” ๋‹จ ํ•œ ๋ฒˆ๋งŒ ํ’€๋„๋กํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค.
  • ํƒ์š• ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ํ•จ๊ป˜ ์–ธ๊ธ‰๋˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ฉฐ, ํƒ์š• ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ๊ฐ™์ด ์ž‘์€ ๋ฌธ์ œ์—์„œ ์ถœ๋ฐœํ•œ๋‹ค.
  • ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์กฐํ•ฉํ•ด ์ตœ์ ์˜ ํ•ด๋ฒ•์„ ์ฐพ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค.
  • ์ฃผ์–ด์ง„ ๋ฌธ์ œ๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ์˜ (์ž‘์€) ํ•˜์œ„ ๋ฌธ์ œ๋กœ ๋‚˜๋ˆ„์–ด ํ’€๊ณ , ํ•˜์œ„ ๋ฌธ์ œ๋“ค์˜ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ๊ฒฐํ•ฉํ•˜์—ฌ ์ตœ์ข… ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•œ๋‹ค.
  • ํ•˜์œ„ ๋ฌธ์ œ๋ฅผ ๊ณ„์‚ฐํ•œ ๋’ค ๊ทธ ํ•ด๊ฒฐ์ฑ…์„ ์ €์žฅํ•˜๊ณ , ๋‚˜์ค‘์— ๋™์ผํ•œ ํ•˜์œ„ ๋ฌธ์ œ๋ฅผ ๋งŒ๋‚  ๊ฒฝ์šฐ ์ €์žฅ๋œ ํ•ด๊ฒฐ์ฑ…์„ ์ ์šฉํ•ด ๊ณ„์‚ฐ ํšŸ์ˆ˜๋ฅผ ์ค„์ธ๋‹ค.

Dynamic Programming์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์กฐ๊ฑด

  • Overlapping Sub-problems: ํฐ ๋ฌธ์ œ๋ฅผ ์ž‘์€ ๋ฌธ์ œ๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๊ณ , ์ด ์ž‘์€ ๋ฌธ์ œ๊ฐ€ ์ค‘๋ณตํ•ด์„œ ๋ฐœ๊ฒฌ๋œ๋‹ค.
  • Optimal Substructure: ์ž‘์€ ๋ฌธ์ œ์—์„œ ๊ตฌํ•œ ์ •๋‹ต์€ ๊ทธ๊ฒƒ์„ ํฌํ•จํ•˜๋Š” ํฐ ๋ฌธ์ œ์—์„œ๋„ ๊ฐ™๋‹ค. ์ฆ‰, ์ž‘์€ ๋ฌธ์ œ์—์„œ ๊ตฌํ•œ ์ •๋‹ต์„ ํฐ ๋ฌธ์ œ์—์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜์žˆ๋‹ค.

๐Ÿ“˜ ์ถ”๊ฐ€๋กœ ๊ณต๋ถ€ํ•  ๋‚ด์šฉ

[udemy] React ์™„๋ฒฝ ๊ฐ€์ด๋“œ ๊ฐ•์˜ ๋ณด๊ธฐ (๋งค์ผ ์กฐ๊ธˆ์”ฉ ์ด๋ผ๋„ ๊พธ์ค€ํžˆ ๋“ฃ๊ธฐ) (์™„์ฃผ)

Study์›๊ณผ ํ•จ๊ป˜ ์ง„ํ–‰์ค‘์ธ ํ”„๋กœ์ ํŠธ ๊ตฌํ˜„

pre-Project ์‚ฌ์ดํŠธ ์ฐพ๊ธฐ

๐Ÿ“ ์ค‘์š”ํ•œ ๋‚ด์šฉ

  • ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ž€?
  • ์‹œ๊ฐ„ ๋ณต์žก๋„
  • Big-O ํ‘œ๊ธฐ๋ฒ•
  • ๊ณต๊ฐ„ ๋ณต์žก๋„
  • ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜
  • ๋ธŒ๋ฃจํŠธํฌ์Šค ์•Œ๊ณ ๋ฆฌ์ฆ˜

'Daily > Today I Learned' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

22.08.12_TIL  (0) 2022.08.12
22.08.11_TIL  (0) 2022.08.10
22.08.09_TIL  (0) 2022.08.09
22.08.08_TIL  (0) 2022.08.08
22.08.05_TIL  (0) 2022.08.05