λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
Problem Solving/Algorithm, Tips

λ‹€μ΄λ‚˜λ―Ή ν”„λ‘œκ·Έλž˜λ°

by 행뱁 2020. 6. 24.

λ‹€μ΄λ‚˜λ―Ή ν”„λ‘œκ·Έλž˜λ°μ€

1) 큰 문제λ₯Ό μž‘μ€ 문제둜 λ‚˜λˆŒ 수 있고

2) μž‘μ€ 문제의 닡이 큰 λ¬Έμ œμ—μ„œλ„ 동일할 λ•Œ

ν•˜λ‚˜μ˜ λ¬Έμ œλŠ” ν•œ 번만 풀도둝 Memoization ν•˜λŠ” μ•Œκ³ λ¦¬μ¦˜μ΄λ‹€.

 

κ°€λ Ή ν”Όλ³΄λ‚˜μΉ˜ μˆ˜μ—΄μ„ ꡬ할 λ•Œ

https://youtu.be/FmXZG7D8nS4

fib(15)λ₯Ό κ΅¬ν•˜λ €λ©΄ fib(14) + fib(13)을 ꡬ해야 ν•˜λŠ”λ°,

μœ„ 그림처럼 λ™μΌν•œ 계산을 맀우 μ—¬λŸ¬ 번 ν•΄μ•Ό 함을 μ•Œ 수 μžˆλ‹€.

 

λ”°λΌμ„œ ν•œ 번 κ³„μ‚°ν•œ 값을 배열에 memo ν•΄ 두고,

배열에 memo ν•΄ λ‘” 값이 μžˆλ‹€λ©΄ 그것을 λ°˜ν™˜ν•˜κ³ 

값이 μ—†λ‹€λ©΄ (처음 κ³„μ‚°ν•˜λŠ” κ²ƒμ΄λ―€λ‘œ) κ³„μ‚°ν•˜κ³  memo ν•˜λ©΄ λœλ‹€.

 

https://youtu.be/FmXZG7D8nS4

 

μΆœμ²˜λŠ” 사진 μ•„λž˜ 링크

λŒ“κΈ€