์ด์ฝํ 6 [์๊ณ ๋ฆฌ์ฆ] ๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ(DP) ์ค๋ณต๋๋ ์ฐ์ฐ์ ์ค์ด์ ์ต์ ์ ํด๋ฅผ ๊ตฌํ๊ธฐ์ ์๊ฐ์ด ๋งค์ฐ ๋ง์ด ํ์ํ๊ฑฐ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ด ๋งค์ฐ ๋ง์ด ํ์ํ ๋ฌธ์ ๋ฑ์ด ์ปดํจํฐ๋ก๋ ํด๊ฒฐํ๊ธฐ ์ด๋ ค์ด ๋ฌธ์ ์ด๋ค. ์ปดํจํฐ๋ ์ฐ์ฐ ์๋์ ํ๊ณ๊ฐ ์๊ณ , ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ฌ์ฉํ ์ ์๋ ๋ฐ์ดํฐ์ ๊ฐ์๋ ํ์ ์ ์ด๋ผ๋ ์ ์ด ๋ง์ ์ ์ฝ์ ๋ฐ์์ํจ๋ค. โก๏ธ ์ฐ์ฐ ์๋๊ฐ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ต๋ํ์ผ๋ก ํ์ฉํ ์ ์๋ ํจ์จ์ ์๊ณ ๋ฆฌ์ฆ ์์ฑ์ ํ์์ฑ โฌ๏ธ ์ด๋ค ๋ฌธ์ ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ฝ๊ฐ ๋ ์ฌ์ฉํ๋ฉด ์ฐ์ฐ ์๋๋ฅผ ๋น์ฝ์ ์ผ๋ก ์ฆ๊ฐ์ํฌ ์ ์๋ ๋ฐฉ๋ฒ์ด ์๋ค. ์ด๋ ๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ ๊ธฐ๋ฒ์ผ๋ก ๋์ ๊ณํ๋ฒ์ด๋ผ๊ณ ํํํ๊ธฐ๋ ํ๋ค. ๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ์ผ๋ก ํด๊ฒฐํ ์ ์๋ ๋ํ์ ์ธ ์์๋ก ํผ๋ณด๋์น ์์ด์ด ์๋ค. ํผ๋ณด๋์น ์์ด์ ์ด์ ๋ ํญ์ ํฉ์ ํ์ฌ์ ํญ์ผ๋ก ์ค์ ํ๋ ํน์ง์ด ์๋ ์์ด์ด๋ค. ํผ๋ณด๋์น.. 2023. 11. 28. [์๊ณ ๋ฆฌ์ฆ] ์ด์งํ์ (๋ฒ์๊ฐ ํฐ ์๋ผ๋ฉด.. ์ด์งํ์์ด๋ค!) ์์ฐจ ํ์ ์์ฐจ ํ์(Sequential Search)์ด๋ ๋ฆฌ์คํธ ์์ ์๋ ํน์ ํ ๋ฐ์ดํฐ๋ฅผ ์ฐพ๊ธฐ ์ํด ์์์๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ํ๋์ฉ ์ฐจ๋ก๋๋ก ํ์ธํ๋ ๋ฐฉ๋ฒ์ด๋ค. ์์ฐจ ํ์์ ์ด๋ฆ์ฒ๋ผ ์์ฐจ๋ก ๋ฐ์ดํฐ๋ฅผ ํ์ํ๋ค. ์์ฐจ ํ์์ ์ ๋ง ์์ฃผ ์ฌ์ฉ๋๋๋ฐ, ๋ฆฌ์คํธ์ ํน์ ๊ฐ์ ์์๊ฐ ์๋์ง ์ฒดํฌํ ๋๋ ์์ฐจ ํ์์ผ๋ก ์์๋ฅผ ํ์ธํ๊ณ , ๋ฆฌ์คํธ ์๋ น์์ ํน์ ํ ๊ฐ์ ๊ฐ์ง๋ ์์์ ๊ฐ์๋ฅผ ์ธ๋ count() ๋ฉ์๋๋ฅผ ์ด์ฉํ ๋๋ ๋ด๋ถ์์๋ ์์ฐจ ํ์์ด ์ํ๋๋ค. #์์ฐจํ์ def sequential_search(n, target, array): #๊ฐ ์์๋ฅผ ํ๋์ฉ ํ์ธํ๋ฉฐ for i in range(n): if array[i] == target: return i+1 #ํ์ฌ ์์น ๋ฐํ(์ธ๋ฑ์ค๋ 0๋ถํฐ ์์ํ๋ฏ๋ก 1 ๋ํ๊ธฐ) .. 2023. 11. 14. [์๊ณ ๋ฆฌ์ฆ] ์ ๋ ฌ (์ ํ, ์ฝ์ , ํต์ ๋ ฌ..) ์ ๋ ฌ(sorting)์ด๋ ๋ฐ์ดํฐ๋ฅผ ํน์ ํ ๊ธฐ์ค์ ๋ฐ๋ผ์ ์์๋๋ก ๋์ดํ๋ ๊ฒ์ ๋งํ๋ค.(ex. ์ค๋ฆ์ฐจ์, ๋ด๋ฆผ์ฐจ์) ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฌํ๋ฉด ๋ค์์ฅ์์ ๋ฐฐ์ธ ์ด์งํ์(binary search)๊ฐ ๊ฐ๋ฅํด์ง๋ค. ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ ์ด์งํ์์ ์ ์ฒ๋ฆฌ ๊ณผ์ ์ด๋ผ๊ณ ๋ ๋ณผ ์ ์๋ค. ์ฝ๋ฉํ ์คํธ๋ฅผ ๋๋นํ๊ธฐ ์ํด์ ํฌ๊ฒ 5๊ฐ์ง ์ ๋ ฌ ๋ฐฉ๋ฒ์ ๋ํด์ ์๊ณ ์์ผ๋ฉด ์ข๋ค! ์ ํ์ ๋ ฌ / ์ฝ์ ์ ๋ ฌ / ํต์ ๋ ฌ / ๊ณ์์ ๋ ฌ / ํ์ด์ฌ ๊ธฐ๋ณธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ ๋ ฌ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ ์๊ณ ๋ฆฌ์ฆ ์ ๊ณต ์๊ฐ๋ ๋ฐฐ์ด๋ฐ ์๋๋ฐ, ๊ทธ๋๋ c++ ์์ฃผ๋ก ์๊ณ ๋ฆฌ์ฆ ์์ฌ์ฝ๋๋ฅผ ํตํด ๊ณต๋ถ๋ฅผ ํ์๋ค.(์ค๊ฐ๊ณ ์ฌ ๋๋น๋ฅผ ์ํด pseudocode ์ ์ฒด๋ฅผ ์ธ์ ๋ ์ ๋ชฝ์ด...) ๊ทธ ๊ธฐ์ต์ ๋ ์ฌ๋ ค๋ณด๋ฉด์ python์์์ ์ฝ๋ ๊ตฌํ์๋ ์ด๋ค ์ด์ ์ด ์๋์ง ์์๋ณด๊ณ ์ถ์ .. 2023. 11. 13. [์๊ณ ๋ฆฌ์ฆ] BFS/DFS (feat. stack, queue) ๊ผญ ํ์ํ ์๋ฃ๊ตฌ์กฐ ๊ธฐ์ด BFS/DFS๋ฅผ ๋ค์ด๊ฐ๊ธฐ์ ์์, ๋ฐ์ดํฐ๋ฅผ ํํํ๊ณ ๊ด๋ฆฌํ๊ธฐ ์ํ ๊ตฌ์กฐ์ ๋ํด์ ๊ฐ๋จํ ์๊ธฐํด๋ณด๊ณ ๋์ด๊ฐ์. Stack ๋ฐ์ค ์๊ธฐ์ ๋น์ ํ ์ ์๋ค ์ ์ ํ์ถ, ํ์ ์ ์ถ ํ์ด์ฌ์์ ์คํ์ ์ด์ฉํ ๋์๋ ๋ณ๋์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ ํ์๊ฐ ์๋ค. ๊ธฐ๋ณธ ๋ฆฌ์คํธ์์ append()์ pop() ๋ฉ์๋๋ฅผ ์ด์ฉํ๋ฉด ์คํ ์๋ฃ๊ตฌ์กฐ์ ๋์ผํ๊ธฐ ๋์ํ๋ค. Queue ๋๊ธฐ์ค์ ๋น์ ํ ์ ์๋ค. ์ ์ ์ ์ถ ๊ตฌ์กฐ ํ์ด์ฌ์ผ๋ก ํ๋ฅผ ๊ตฌํํ ๋๋ collections ๋ชจ๋์์ ์ ๊ณตํ๋ deque ์๋ฃ๊ตฌ์กฐ๋ฅผ ํ์ฉํ์. deque๋ ์คํ๊ณผ ํ์ ์ฅ์ ์ ๋ชจ๋ ์ฑํํ ๊ฒ์ธ๋ฐ ๋ฐ์ดํฐ๋ฅผ ๋ฃ๊ณ ๋นผ๋ ์๋๊ฐ ๋ฆฌ์คํธ ์๋ฃํ์ ๋นํด ํจ์จ์ ์ด๋ฉฐ queue ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ด์ฉํ๋ ๊ฒ๋ณด๋ค ๋ ๊ฐ๋จํ๋ค. ํ์ ๊ฐ์ ๊ฒฝ์ฐ push_bac.. 2023. 10. 11. ์ด์ 1 2 ๋ค์