๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿš— Major Study (Bachelor)/๐ŸŸจ Algorithm20

์•Œ๊ณ ๋ฆฌ์ฆ˜ 5์ฃผ์ฐจ ์›”์š”์ผ ๊ฐ•์˜ Greedy Algorithm Dynamic Programming is Blind ๋ญ”๊ฐ€ ์ž˜ ๋ณด์ด์ง€ ์•Š๋Š” ์ƒํƒœ์—์„œ ํ‘ธ๋Š” ๋ฌธ์ œ์˜ ๋Š๋‚Œ์ด๋ผ๋Š” ๊ฒƒ. matrix chain์ด๋‚˜ LCS๊ฐ™์€ ๊ฒฝ์šฐ์˜ Time Complexity๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ์„ธํƒ€๋ผ๊ณ  ํ‘œํ˜„์„ ํ•ด์•ผ ํ•œ๋‹ค. (์ •์ • ํ•„์š”) LCS์˜ ๊ฒฝ์šฐ M๊ณผ N์ด order๊ฐ€ ๋น„์Šทํ•˜๋‹ค๊ณ  ํ•˜๋ฉด ์„ธํƒ€ M^2๊นŒ์ง€ ๊ฐ€๋Šฅํ•  ์ˆ˜ ๋„ ์žˆ๋‹ค. ๋น„๊ต์  ์ฐจ์ˆ˜๊ฐ€ ๋†’๊ฒŒ ๋‚˜์˜จ๋‹ค. ์™œ ๊ทธ๋Ÿฐ๊ฐ€? Optimal solution์„ ๊ณ„์‚ฐํ•  ๋•Œ ์„ ํƒ์ด ๊ต‰์žฅํžˆ ์—ฌ๋Ÿฌ๊ฐ€์ง€๊ฐ€ ์กด์žฌํ•œ๋‹ค. ๊ทธ ์„ ํƒ์ด ์–ด๋Š๊ฒŒ ์˜ณ์€ ์„ ํƒ์ธ์ง€ ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ณ ๋ คํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. Example: MCM ๋งจ์ฒ˜์Œ (1,6)์— ์žˆ๋Š” ๊ฒƒ ์ค‘ ์ตœ์ ์˜ ๊ฐ’์„ ์œ„ํ•ด์„œ ์ด 5๋ฒˆ์˜ ๊ณฑ์…ˆ์„ ๊ณ„์‚ฐํ•˜๊ฒŒ ๋œ๋‹ค. ๊ทธ ์ค‘ ์ตœ์ ์˜ ๊ฐ’์ธ ๋…ธ๋ž€์ƒ‰์ด ์ฑ„ํƒ์ด ๋œ๋‹ค. .. 2022. 4. 4.
์•Œ๊ณ ๋ฆฌ์ฆ˜ 4์ฃผ์ฐจ ๋ชฉ์š”์ผ ์˜คํ”ˆ๋ถ, ํ…์Šค๋ถ๊ณผ ์Šฌ๋ผ์ด๋“œ(PDF๋กœ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์‚ฌ๋žŒ์€ ์•ˆ๋œ๋‹ค). Master Theorem ์„ ์–ด๋Š ์ •๋„ ์ฃผ๋ ค๊ณ  ํ•œ๋‹ค. P3๋Š” ํ–‰๋ ฌ์„ ๊ณฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋‚˜ํƒ€๋‚ด๊ณ  ์žˆ๋‹ค. Divide and Conquer๋Š” ์‹œ๊ฐ„์ด ๋” ์˜ค๋ž˜ ๊ฑธ๋ฆฐ๋‹ค. ๋˜‘๊ฐ™์€ Subproblem์„ ๊ณ„์† ํ•ด์„œ ํ’€์–ด์„œ ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฐ๋‹ค. ์„ธํƒ€N์œผ๋กœ ํ‘œํ˜„ํ•˜๋ ค๋ฉด ์ •ํ™•์ด N ๋ฒˆ ๋งŒ ์‹คํ–‰๋˜์–ด์•ผ ํ•˜๋Š”๋ฐ Worst case์™€ Best case์— ํ•ด๋‹นํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋‹ค์–‘ํ•˜๊ฒŒ ๋˜๋ฉด ๋น…์˜ค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. Loop ์ด ์žˆ์œผ๋ฉด Loop ๋งŒ ๋ด๋„ ๋œ๋‹ค. Memorization ๋ฐฉ์‹๋„ Recursion์„ ํ•˜์ง€๋งŒ ์ €์žฅํ•˜์ง€ ์•Š์€ ๋ถ€๋ถ„์— ๋Œ€ํ•ด์„œ๋งŒ callํ•˜๋ฏ€๋กœ ๋™์ผํ•˜๋‹ค. 2022. 3. 24.
์•Œ๊ณ ๋ฆฌ์ฆ˜ 4์ฃผ์ฐจ ์›”์š”์ผ ๊ฐ•์˜ 2022. 3. 24.
์•Œ๊ณ ๋ฆฌ์ฆ˜ 4์ฃผ์ฐจ ์›”์š”์ผ ๊ฐ•์˜ Optimal Substructure ๊ฐ๊ฐ์˜ ์ ์„ ์ฐ์œผ๋ฉด ์„ธ๋กœ์˜ ์ขŒํ‘œ๋ถ€ํ„ฐ ๊ฐ€๋กœ์˜ ์ขŒํ‘œ๋กœ ๊ฐ€๋Š” ์ตœ๋‹จ ๊ฑฐ๋ฆฌ๋ฅผ ๋‚˜ํƒ€๋‚ด๊ฒŒ ๋œ๋‹ค. Diagonol ํ•œ ๊ฒƒ์€ ์ž๊ธฐ ์ž์‹ ์— ๋Œ€ํ•ด ๋Œ€์‘ํ•˜๋ฏ€๋กœ 0์œผ๋กœ ์ฑ„์›Œ์ ธ์žˆ๋‹ค. (1,3) ๋ถ€ํ„ฐ๋Š” ๋‘๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์กด์žฌํ•œ๋‹ค. ๊ด„ํ˜ธ๋ฅผ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋กœ ๋‚˜๋‰  ์ˆ˜ ์žˆ๋‹ค. ๋งˆ์ง€๋ง‰ Solution์€ (1,6)์— ์œ„์น˜ํ•˜๊ฒŒ ๋œ๋‹ค. (3,6)์˜ ๊ฒฝ์šฐ, A3๋ถ€ํ„ฐ A6๊นŒ์ง€ ๊ณฑํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ๋ฅผ ์ƒ๊ฐํ•ด๋ณด์ž. Sub Problem์— ๋Œ€ํ•œ Solution์ด ์กด์žฌํ•ด์•ผ ํ•˜๊ณ  ๊ทธ๊ฒƒ๋“ค์ด Optimal ํ•ด์•ผ ํ•œ๋‹ค. Optimal Solution์„ ๊ตฌํ•  ๋•Œ ์ด ์ „์˜ Sub Problem์˜ Solution์€ Optimal ํ•˜๋‹ค๋Š” ๊ฐ€์ •์„ ๊ฐ€์ง€๊ณ  ๊ณ„์‚ฐ์„ ํ•˜๋ฏ€๋กœ ๋‹ค์‹œ ๊ณ„์‚ฐํ•˜์ง€ ์•Š์•„๋„ ๋˜๋Š” Bottom up ๋ฐฉ์‹์ด๋‹ค. Opti.. 2022. 3. 20.
์•Œ๊ณ ๋ฆฌ์ฆ˜ 3์ฃผ์ฐจ ๋ชฉ์š”์ผ ๊ฐ•์˜ Master Theorem ์œผ๋กœ ํ’€ ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ๋„ ์กด์žฌํ•œ๋‹ค. ์—ก์‹ค๋ก ์€ 1/1000๋„ ๋˜๊ณ  1๋„ ๋˜๊ณ  ๊ต‰์žฅํžˆ ๋งŽ์€ ์ˆซ์ž๋„ ์„ฑ๋ฆฝํ•œ๋‹ค. 2022. 3. 17.
์•Œ๊ณ ๋ฆฌ์ฆ˜ 3์ฃผ์ฐจ ์›”์š”์ผ ๊ฐ•์˜ Exercise1 ํ–‰๋ ฌ ๊ณฑํ•˜๊ธฐ ๋ฌธ์ œ: Iterative solution ์ด ์‚ฌ์šฉ๋œ๋‹ค. A์™€ B๊ฐ€ ๊ฐ๊ฐ nxn ํ–‰๋ ฌ์ด๋ผ๊ณ  ๊ฐ€์ •. 3๋ฒˆ๋ถ€ํ„ฐ 7๋ฒˆ๊นŒ์ง€๊ฐ€ ๊ณฑํ•˜๊ฒŒ ๋˜๋Š” ๊ณผ์ •. 3๊ฐœ์˜ for loop์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค. 7๋ฒˆ ๋ผ์ธ์—์„œ ๊ณฑํ•˜๊ฒŒ ๋œ๋‹ค. C ํ–‰๋ ฌ์€ A์˜ row์™€ B์˜ column์„ ๋ชจ๋‘ ๊ณฑํ•˜๊ฒŒ ๋˜๋Š” ๊ณผ์ •์ด ์žˆ๋‹ค. Time Complexity๋ฅผ ๊ตฌํ•˜๋Š” ๊ฒƒ์€ for loop์ด๋ฉด ๊ตฌํ•˜๊ธฐ ์‰ฝ๋‹ค. ์„ธํƒ€ n^3์ด๋‹ค. ๊ทธ๋ƒฅ n^3์ด๋ผ๊ณ  ํ‘œํ˜„ํ•˜๋ฉด ์•ˆ๋œ๋‹ค. Exercise 2 Divide and conquer๋กœ ํ’€๊ฒŒ ๋˜๋ฉด Recur๋กœ ํ•˜๊ฒŒ ๋œ๋‹ค. C๋ผ๋Š” ๋งคํŠธ๋ฆญ์Šค๋ฅผ ๋ฐ˜๋ฐ˜ 4๋“ฑ๋ถ„์„ ์ง„ํ–‰ํ•œ๋‹ค. A์™€ B๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ Divide๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค. C๋ผ๋Š” ๋งคํŠธ๋ฆญ์Šค๋Š” A์™€ B ๋งคํŠธ๋ฆญ์Šค ๊ทธ๋ฃน์œผ๋กœ ๊ณฑํ•˜๊ฒŒ ๋œ๋‹ค. Element๋ฅผ ํ•˜๋‚˜ ๋‚จ๊ธธ .. 2022. 3. 14.
์•Œ๊ณ ๋ฆฌ์ฆ˜ 2์ฃผ์ฐจ ๋ชฉ์š”์ผ 0์œผ๋กœ ์ˆ˜๋ ดํ•ด์•ผ ํ•œ๋‹ค. ๋“ค์–ด๊ฐ€๋Š” ์œ„์น˜๋Š” ๋น…์˜ค ๋กœ๊ทธ n์ด๋ž‘ ์Šคํ€˜์–ด n ์‚ฌ์ด์— ๋“ค์–ด๊ฐ€๋Š” ๊ฒƒ์ด ๋งž๋‹ค. ๋น…์˜ค์˜ ์ •์˜๋งŒ ์•Œ๋ฉด ๋ฐ”๋กœ ๋‹ตํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ.... 2. ๋น…์˜ค์—์„œ = ๋ผ๋Š” ํ‘œ์‹œ๋Š” ํฌํ•จ๊ด€๊ณ„์— ํ•ด๋‹นํ•˜๋ฏ€๋กœ ์ˆ˜ํ•™์  ํ‘œ์‹œ์™€ ๋‹ค๋ฅด๋‹ค. 3. set ์„ ๋”ํ•˜๊ฒŒ ๋˜๋ฉด ๊ฐ€์žฅ ํฐ order๋งŒ ๋‚จ์œผ๋ฏ€๋กœ True๊ฐ€ ๋œ๋‹ค. 4. ๋น…์˜ค๋กœ ํ‘œํ˜„์„ ๋ฐ”๊พธ์–ด๋„ ์ถฉ๋ถ„ํžˆ ๋งž๊ธด ํ•˜์ง€๋งŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์ฃผ์–ด์ง€๊ณ  ์„ธํƒ€, ๋น…์˜ค๋กœ ํ‘œํ˜„์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด ์„ธํƒ€ ํ‘œํ˜„์ด ๋” ์ข‹๋‹ค. 5. ์Šค๋ชฐ ์˜ค์˜ ๊ฒฝ์šฐ ์ž์‹ ๊ณผ ๋™์ผํ•œ ์ฐจ์ˆ˜๊ฐ€ ์กด์žฌํ•˜๋ฉด ์„ฑ๋ฆฝํ•  ์ˆ˜ ์—†๋‹ค. 1. max tree ๋ฅผ ๋งŒ์กฑํ•˜์ง€ ์•Š๋Š”๋‹ค. 2. Max tree ๋Š” ๋งŒ์กฑํ•˜์ง€๋งŒ 52 55์—์„œ max ๊ด€๊ณ„๋ฅผ ๋งŒ์กฑํ•˜์ง€ ์•Š๋Š”๋‹ค. 3. max heap ์„ ๋งŒ์กฑํ•œ๋‹ค. Nearly Binary Tree ์ด๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— Com.. 2022. 3. 10.
์•Œ๊ณ ๋ฆฌ์ฆ˜ 2์ฃผ์ฐจ ์›”์š”์ผ ๊ฐ•์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜ Growth of Functions function์ด ์–ด๋–ป๊ฒŒ ์ž๋ผ๋Š”๊ฐ€. Time complexity์— ๊ด€ํ•œ ๊ฒƒ์„ ๋ฐฐ์šฐ๋Š” ๊ณผ์ด๋‹ค. ๋ฌผ๋ก  ๋”๋ถˆ์–ด์„œ Space complexity๋„ ๋ถ„์„ํ•˜๊ฒŒ ๋œ๋‹ค. ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์–ด๋–ค ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š”๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์ด ์žˆ๋Š”๋ฐ ์–ด๋–ค order(์ฐจ์›)์—์„œ ์ ์šฉ์ด ๋˜๋Š”์ง€๋ฅผ, ํšจ์œจ์„ฑ์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ๋ณด์—ฌ์ฃผ๋Š” ๊ฒƒ์ด๋‹ค. Input size N์ด ๋ฌดํ•œ๋Œ€๋กœ ๊ฐ”์„ ๋•Œ A, B ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์–ด๋Š ๊ฒƒ์ด ๋” ์˜ค๋ž˜๊ฑธ๋ฆฌ๋Š” ์ง€๋ฅผ ๋ฒ”์ฃผํ™”ํ•˜์ž๋Š” ๊ฒƒ์ด๋‹ค. ๋ฌผ๋ก  ์–ด๋–ค INput์ด ๋“ค์–ด๊ฐ€๋Š”์ง€์— ๋”ฐ๋ผ์„œ ์ฐจ์ด๊ฐ€ ์žˆ๊ฒ ์ง€๋งŒ ์–ด๋–ค ๊ธ‰์ธ์ง€๋ฅผ ๊ฐ„๋‹จํ•˜๊ฒŒ ๋ณด์—ฌ์ฃผ๋Š” ํ…Œํฌ๋‹‰์ด ๋˜๊ฒ ๋‹ค. Growth of Function N = 2์ผ ๋•Œ N = 3์ผ ๋•Œ ์ด๋Ÿฐ ์ž์„ธํ•œ ๊ฒƒ์„ ๋‹ค๋ฃจ์ง€ ์•Š๊ณ  ๋ฌดํ•œ๋Œ€๋กœ ๊ฐ”์„ ๋•Œ ์–ด๋–ป๊ฒŒ ๋˜๋Š”์ง€์— ๋Œ€ํ•œ ์ˆ˜ํ•™์  ์ˆ˜์‹์„ ์ด์šฉํ•ด์„œ.. 2022. 3. 9.
์•Œ๊ณ ๋ฆฌ์ฆ˜ 1์ฃผ์ฐจ ์›”์š”์ผ ๊ฐ•์˜ ๋ฌธ์ œ์— ๋Œ€ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์–ด๋–ค ์‹์œผ๋กœ ๋ถ„์„ํ• ์ง€ ์ด๋ฏธ ์•Œ๊ณ  ์žˆ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ๋ถ„์„ํ•˜๋Š” ์‹œ๊ฐ„ Unsorted List ์—์„œ record ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•ด์„œ Sorted List์— ๋„ฃ๋Š”๋‹ค. ๋ฐฉ๋ฐ”๋‹ฅ์— 1๋ถ€ํ„ฐ 100๊นŒ์ง€ ์ ํ˜€์ ธ์žˆ๋Š” ์ˆซ์ž๊ฐ€ ์žˆ๊ณ  ์นด๋“œ ์ˆซ์ž๊ฐ€ ์•ˆ๋ณด์ธ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜์ž. ๋งŒ์•ฝ ๋ˆ„๊ฐ€ ์ •๋ ฌํ•ด์„œ 1๋ถ€ํ„ฐ 100๊นŒ์ง€ ์ •๋ ฌํ•ด์„œ ๊ฐ€์ ธ์˜ค๋ผ๊ณ  ํ•˜๋ฉด ์–ด๋–ป๊ฒŒ ํ•  ๊ฒƒ ์ธ๊ฐ€? ๋Œ€๋ถ€๋ถ„ ์ž„์˜์˜ ์นด๋“œ ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•˜๋Š”๋ฐ ์ด๋Š” ์ด๋ฏธ ์ •๋ ฌ๋œ ๊ฐ’์ด๊ณ  ๋‹ค์Œ ์นด๋“œ๊ฐ€ ์ฒซ ๋ฒˆ์งธ ์ˆซ์ž๋ณด๋‹ค ํฌ๋ฉด ์˜ค๋ฅธ์† ์ž‘์œผ๋ฉด ์™ผ์†์œผ๋กœ ๋„ฃ๋Š”๋‹ค. ๊ฐ™์€ ๋ฐฉ๋ฒ•์œผ๋กœ ์œ„์น˜์‹œํ‚ค๋ฉด ์™ผ์†๊ณผ ์˜ค๋ฅธ์†์— ์นด๋“œ๊ฐ€ ์ •๋ ฌ๋ผ์„œ ์œ„์น˜ํ•  ๊ฒƒ์ด๋‹ค. ๋…ธ๋ž€์ƒ‰์€ Sorted List์ด๊ณ  ์˜ค๋ฅธ์ชฝ์€ Unsorted List์ด๋‹ค. Bar๊ฐ€ ๊ทธ ์‚ฌ์ด๋ฅผ ๊ตฌ๋ถ„ํ•œ๋‹ค๊ณ  ํ•˜๋ฉด ๋งจ ์™ผ์ชฝ์— ์žˆ๋Š” Element๋Š” Sorted List.. 2022. 3. 1.
์•Œ๊ณ ๋ฆฌ์ฆ˜ 1์ฃผ์ฐจ ์›”์š”์ผ HW ๋งˆ๋‹ค ๋ฐฐ์ ์€ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ๋‹ค. ์‹œํ—˜๊ณผ Quiz๋Š” ์˜คํ”„๋ผ์ธ์œผ๋กœ ์ง„ํ–‰ํ•  ๊ฒƒ. ํ”„๋กœ๊ทธ๋ž˜๋ฐ HW์ด ์•„๋‹Œ Written Homework๋Š” Late ํ—ˆ์šฉ์„ ํ•˜์ง€ ์•Š๋Š”๋‹ค. 2022. 2. 28.