์ ์ฒด ๊ธ127 [์๊ณ ๋ฆฌ์ฆ] ์ ๋ ฌ (์ ํ, ์ฝ์ , ํต์ ๋ ฌ..) ์ ๋ ฌ(sorting)์ด๋ ๋ฐ์ดํฐ๋ฅผ ํน์ ํ ๊ธฐ์ค์ ๋ฐ๋ผ์ ์์๋๋ก ๋์ดํ๋ ๊ฒ์ ๋งํ๋ค.(ex. ์ค๋ฆ์ฐจ์, ๋ด๋ฆผ์ฐจ์) ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฌํ๋ฉด ๋ค์์ฅ์์ ๋ฐฐ์ธ ์ด์งํ์(binary search)๊ฐ ๊ฐ๋ฅํด์ง๋ค. ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ ์ด์งํ์์ ์ ์ฒ๋ฆฌ ๊ณผ์ ์ด๋ผ๊ณ ๋ ๋ณผ ์ ์๋ค. ์ฝ๋ฉํ ์คํธ๋ฅผ ๋๋นํ๊ธฐ ์ํด์ ํฌ๊ฒ 5๊ฐ์ง ์ ๋ ฌ ๋ฐฉ๋ฒ์ ๋ํด์ ์๊ณ ์์ผ๋ฉด ์ข๋ค! ์ ํ์ ๋ ฌ / ์ฝ์ ์ ๋ ฌ / ํต์ ๋ ฌ / ๊ณ์์ ๋ ฌ / ํ์ด์ฌ ๊ธฐ๋ณธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ ๋ ฌ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ ์๊ณ ๋ฆฌ์ฆ ์ ๊ณต ์๊ฐ๋ ๋ฐฐ์ด๋ฐ ์๋๋ฐ, ๊ทธ๋๋ c++ ์์ฃผ๋ก ์๊ณ ๋ฆฌ์ฆ ์์ฌ์ฝ๋๋ฅผ ํตํด ๊ณต๋ถ๋ฅผ ํ์๋ค.(์ค๊ฐ๊ณ ์ฌ ๋๋น๋ฅผ ์ํด pseudocode ์ ์ฒด๋ฅผ ์ธ์ ๋ ์ ๋ชฝ์ด...) ๊ทธ ๊ธฐ์ต์ ๋ ์ฌ๋ ค๋ณด๋ฉด์ python์์์ ์ฝ๋ ๊ตฌํ์๋ ์ด๋ค ์ด์ ์ด ์๋์ง ์์๋ณด๊ณ ์ถ์ .. 2023. 11. 13. [์ฑ ๋ฆฌ๋ทฐ]์ปค๋ฆฌ์ด์คํฌ -์กด ์๋ฉ์ฆ ์ ๋๋์ด ์น์ดํ๋ ์ค๊ฐ๊ณ ์ฌ ๊ธฐ๊ฐ์ด ๋๋ฌ๋ค. ๋ด ์ค๊ฐ๊ณ ์ฌ ๊ธฐ๊ฐ์ 10์11์ผ~10์ 27์ผ์ด์๋ค. ๊ฑฐ์ 3์ฃผ์ ์ก๋ฐํ๋ ๊ธด ์ํ๊ธฐ๊ฐ์ด์๋ค... ๊ทธ๋ ๊ฒ ์ํ์ ๋๋ด๊ณ ์งํ ์กฐ๊ธ์ ์ฌ์ ๋ก์ด ์ง๊ธ ์ด๋ง์ฏค์ ๊ทธ๋์ ์ฝ์ด๋ณด๊ณ ์ถ์๋ "์ปค๋ฆฌ์ด์คํฌ"์ด๋ผ๋ ์ฑ ์ ์ฝ์ด๋ณด๊ณ ์ ๋ฆฌํ๋ ์๊ฐ์ ๊ฐ์ ธ๋ณด๊ณ ์ ํ๋ค! ์ด ์ฑ ์ ์๋ก ์ด ์กฐ๊ธ ๊ธดํธ์ธ๊ฒ ๊ฐ์๋ฐ, ๋ณธ ์๊ธฐ์ ๋ค์ด๊ฐ๊ธฐ์ ์์ ์ ์๊ฐ ์๊ฐํ๋ ์ํํธ์จ์ด๊ฐ๋ฐ์ ์ ๋ฌธ์ ํต์ฌ์ ๋ํด์ ๋ฐ๋ณต์ ์ผ๋ก ์๊ธฐํ๊ณ ์์๋ค. ๊ฒฐ๊ตญ ํต์ฌ์ ๊ณํ์ ์ธ์์ผํ๋ค๋๊ฒ์ด๋ค. ์ํํธ์จ์ด๊ฐ๋ฐ์ ๊ด์ฌ์ ๊ฐ์ง๊ณ ๊ทธ๊ฒ์ผ๋ก ์ง๋ก๋ฅผ ์ก๊ธฐ๋ฅผ ๊ฒฐ์ ํ๋ค๋ฉด, ์ ํํ ์ด๋ค ๊ฐ๋ฐ์๊ฐ ๋๊ณ ์ถ์์ง์ ๋ํด์ ์ฌ๋์๊ฒ ์๊ฐํด๋ณด๋ ์๊ฐ์ด ํ์ํ๋ค. ๊ฐ์ฅ ํฌ๊ฒ๋ก๋ ์ด๋ค ์ ํ(์น, ์ฑ, ๊ฒ์, ์๋ฒ ๋ฑ๋ฑ)์ ๊ฐ๋ฐ์๊ฐ ๋๊ณ ์ถ์์ง ๋จผ์ ์๊ฐํด๋ณด.. 2023. 11. 9. [์๊ณ ๋ฆฌ์ฆ] BFS/DFS (feat. stack, queue) ๊ผญ ํ์ํ ์๋ฃ๊ตฌ์กฐ ๊ธฐ์ด BFS/DFS๋ฅผ ๋ค์ด๊ฐ๊ธฐ์ ์์, ๋ฐ์ดํฐ๋ฅผ ํํํ๊ณ ๊ด๋ฆฌํ๊ธฐ ์ํ ๊ตฌ์กฐ์ ๋ํด์ ๊ฐ๋จํ ์๊ธฐํด๋ณด๊ณ ๋์ด๊ฐ์. Stack ๋ฐ์ค ์๊ธฐ์ ๋น์ ํ ์ ์๋ค ์ ์ ํ์ถ, ํ์ ์ ์ถ ํ์ด์ฌ์์ ์คํ์ ์ด์ฉํ ๋์๋ ๋ณ๋์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ ํ์๊ฐ ์๋ค. ๊ธฐ๋ณธ ๋ฆฌ์คํธ์์ append()์ pop() ๋ฉ์๋๋ฅผ ์ด์ฉํ๋ฉด ์คํ ์๋ฃ๊ตฌ์กฐ์ ๋์ผํ๊ธฐ ๋์ํ๋ค. Queue ๋๊ธฐ์ค์ ๋น์ ํ ์ ์๋ค. ์ ์ ์ ์ถ ๊ตฌ์กฐ ํ์ด์ฌ์ผ๋ก ํ๋ฅผ ๊ตฌํํ ๋๋ collections ๋ชจ๋์์ ์ ๊ณตํ๋ deque ์๋ฃ๊ตฌ์กฐ๋ฅผ ํ์ฉํ์. deque๋ ์คํ๊ณผ ํ์ ์ฅ์ ์ ๋ชจ๋ ์ฑํํ ๊ฒ์ธ๋ฐ ๋ฐ์ดํฐ๋ฅผ ๋ฃ๊ณ ๋นผ๋ ์๋๊ฐ ๋ฆฌ์คํธ ์๋ฃํ์ ๋นํด ํจ์จ์ ์ด๋ฉฐ queue ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ด์ฉํ๋ ๊ฒ๋ณด๋ค ๋ ๊ฐ๋จํ๋ค. ํ์ ๊ฐ์ ๊ฒฝ์ฐ push_bac.. 2023. 10. 11. [C++] ์ฐ๊ฒฐ๋ฆฌ์คํธ (feat.๋ฐํน๋ ) ์ฐ๊ฒฐ ๋ฆฌ์คํธ์ ์ ์ ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋, ์์๋ค์ ์ ์ฅํ ๋ ๊ทธ ๋ค์ ์์๊ฐ ์๋ ์์น๋ฅผ ํฌํจ์ํค๋ ๋ฐฉ์์ผ๋ก ์ ์ฅํ๋ ์๋ฃ๊ตฌ์กฐ์ด๋ค. ์ฐ๊ฒฐ ๋ฆฌ์คํธ์ ์ฑ์ง k ๋ฒ์งธ ์์๋ฅผ ํ์ธ/๋ณ๊ฒฝํ๊ธฐ ์ํด O(k)๊ฐ ํ์ (๋ฐฐ์ด๊ณผ ๋ค๋ฅด๊ฒ ๊ณต๊ฐ์ ์์๋ค์ด ์ฐ์ํด์ ์์นํ๊ณ ์์ง ์๊ธฐ ๋๋ฌธ) ์์์ ์์น์ ์์๋ฅผ ์ถ๊ฐ/์์ ์์น์ ์์ ์ ๊ฑฐ๋ O(1) โญ๏ธ ์์๋ค์ด ๋ฉ๋ชจ๋ฆฌ ์์ ์ฐ์ํด์์ง ์์ Cache hit rate๊ฐ ๋ฎ์ง๋ง ํ ๋น์ด ๋ค์ ์ฌ์ ์ฐ๊ฒฐ ๋ฆฌ์คํธ์ ์ข ๋ฅ ๋จ์ผ ์ฐ๊ฒฐ ๋ฆฌ์คํธ: ๊ฐ ์์๊ฐ ์์ ์ ๋ค์ ์์์ ์ฃผ์๋ฅผ ๋ค๊ณ ์๋ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ์ด์ค ์ฐ๊ฒฐ ๋ฆฌ์คํธ: ๊ฐ ์์๊ฐ ์์ ์ ์ด์ ์์์ ๋ค์ ์์์ ์ฃผ์๋ฅผ ๋๋ค ๋ค๊ณ ์๋ค. ๋จ์ผ ์ฐ๊ฒฐ ๋ฆฌ์คํธ์์๋ ์ฃผ์ด์ง ์์์ ์ด์ ์์๊ฐ ๋ฌด์์ธ์ง๋ฅผ ์ ์ ์๋๋ฐ, ์ด์ค ์ฐ๊ฒฐ ๋ฆฌ์คํธ์์๋ .. 2023. 9. 19. ์ด์ 1 ยทยทยท 5 6 7 8 9 10 11 ยทยทยท 32 ๋ค์