์ ์ฒด ๊ธ(43)
-
01. [์๋ฃ๊ตฌ์กฐ] ์๋ฃ๊ตฌ์กฐ์ ๋ํ ๊ธฐ๋ณธ์ ์ธ ์ดํด
์๋ฃ๊ตฌ์กฐ๋ ๋ฌด์์ธ๊ฐ? ์๋ฃ๊ตฌ์กฐ : ๋ฐ์ดํฐ์ ํํ(๋ฐ์ดํฐ์ ์ ์ฅ) ๋ฐฉ๋ฒ ex) int, float, vector, list, map, ์ ์ ๋ฐฐ์ด, ๋์ ๋ฐฐ์ด ๋ฑ๋ฑ ์๊ณ ๋ฆฌ์ฆ : ์๋ฃ๊ตฌ์กฐ๋ก ํํ๋ ๋ฐ์ดํฐ๋ฅผ ๋์์ผ๋ก ํ๋ '๋ฌธ์ ํด๊ฒฐ ๋ฐฉ๋ฒ' [ ์๋ฃ๊ตฌ์กฐ์ ๋ถ๋ฅ ] ์๊ณ ๋ฆฌ์ฆ์ ์ฑ๋ฅ๋ถ์ ๋ฐฉ๋ฒ [ ์๊ฐ ๋ณต์ก๋ (Time Complexity)์ ๊ณต๊ฐ ๋ณต์ก๋ (Space Complexity) ] ์๊ฐ ๋ณต์ก๋ (Main) "์ด๋ค ์๊ณ ๋ฆฌ์ฆ์ด ์ด๋ ํ ์ํฉ์์ ๋ ๋น ๋ฅด๊ณ ๋ ๋๋ฆฐ๊ฐ?" ๊ณต๊ฐ ๋ณต์ก๋ (Sub) "์ด๋ค ์๊ณ ๋ฆฌ์ฆ์ด ์ด๋ ํ ์ํฉ์์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ ์ ๊ฒ ์ฐ๊ณ ๋ง์ด ์ฐ๋?" ์๊ณ ๋ฆฌ์ฆ์ ์ํ์๋๋ฅผ ํ๊ฐํ ๋๋ ์ฐ์ฐ์ ํ์๋ฅผ ์ธ๋ ๋ฐฉ๋ฒ์ ์ทจํ๋ค. ๊ทธ๋ฆฌ๊ณ ์ฒ๋ฆฌํด์ผ ํ ๋ฐ์ดํฐ์ ์๊ฐ n์ ๋ํ ์ฐ์ฐํ์์ ํจ์ T(n)์ ๊ตฌ์ฑํ๋ค...
2019.06.28 -
04. [C++] STL (Standard Template Library) - ์๊ณ ๋ฆฌ์ฆ(algorithm)
for_each ์๊ณ ๋ฆฌ์ฆ ํจ์. ํค๋์์ ์ ๊ณต. for_each(begin, end, function pointer or functor) ์ปจํ ์ด๋๋ฅผ ์ํํ๋ฉด์ ์ธ ๋ฒ์งธ ์ธ์๋ก ๋๊ฒจ๋ฐ์ ํจ์ ํฌ์ธํฐ๋ ํจ์ ๊ฐ์ฒด๋ฅผ ๋ฐ๋ณต ์ํ. ํจ์ ํฌ์ธํฐ๋ ํจ์ ๊ฐ์ฒด๋ '๋จํญ'์ด์ด์ผ ํ๋ค. ๋ฐฐ์ด์ ๋์์ผ๋ก๋ ์ ์ฉ ๊ฐ๋ฅ. count_if ์๊ณ ๋ฆฌ์ฆ ํจ์. ์ปจํ ์ด๋๋ฅผ ์ํํ๋ฉด์ '๋จํญ ์กฐ๊ฑด์'๋ฅผ ์คํํ๋ค. '๋จํญ ์กฐ๊ฑด์'๊ฐ ๋ฐํํ๋ true์ ๊ฐ์๋ฅผ ๊ณ์ฐํ๋ ์๊ณ ๋ฆฌ์ฆ ํจ์. ์ปจํ ์ด๋ ๋ฟ๋ง ์๋๋ผ ๋ฐฐ์ด์ ๋์์ผ๋ก๋ ํ ์ ์๋ค. find_if ์๊ณ ๋ฆฌ์ฆ ํจ์. '๋จํญ ์กฐ๊ฑด์'๊ฐ true๋ฅผ ๋ฐํํ ๊ฒฝ์ฐ์ ํด๋น๋๋ ๋ฐ๋ณต์๋ฅผ ๋ฐํํ๋ค.
2019.06.26 -
03. [C++] STL (Standard Template Library) - Map
Map ํ์ค ์ฐ๊ด ์ปจํ ์ด๋. (๋น ์ ํ์ ). ์๊ฐ ๊ท ํ ์ด์ง ํ์ํธ๋ฆฌ (๋ ๋ - ๋ธ๋ ํธ๋ฆฌ) ๊ธฐ๋ฐ์ด๋ค. ๋ ธ๋ ๊ธฐ๋ฐ. (๋น ์ฐ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์กฐ.) ์์ ํ๋๊ฐ Key์ Value ํ ์์ผ๋ก ์ด๋ฃจ์ด์ ธ ์๋ค. (์ค๋ณต Key๋ ํ์ฉํ์ง ์๋๋ค.) ์ฝ์ , ์ญ์ ์ Key ๊ธฐ์ค์ผ๋ก ๋งค๋ฒ ์ ๋ ฌ์ด ์ผ์ด๋๋ค. (๋น๋ฒํ ์ฝ์ , ์ญ์ ๋ถ๋ฆฌ.) Key๊ฐ์ ํตํด์ [] ์ ๊ทผ์ด ๊ฐ๋ฅํ๋ค. ์ด์ง ํ์ ํธ๋ฆฌ ๊ธฐ๋ฐ์ด๋ค. (ํ์ ์ ๋ฆฌ.) [ Map์ ์ ์ธ ] map๋ก ์ ์ธ ํ๋ค. Key์ Value์๋ ๊ตฌ์กฐ์ฒด๋ ํด๋์ค๊ฐ ์ฌ ์ ๋ ์๋ค. [ Map์ ์์ ์ฝ์ ] (1) pair ๊ตฌ์กฐ์ฒด๋ฅผ ์ด์ฉํ Map ์์ ์ฝ์ . map์ ์์๋ฅผ ์ฝ์ ํ๊ธฐ ์ ์ pair๊ตฌ์กฐ์ฒด๋ฅผ ์์ฑํด์ผํ๋ค. ์ฆ, map์ ์์๋ pair๋ก ์ด๋ฃจ์ด์ก๋ค. first - K..
2019.06.25 -
02. [C++] STL (Standard Template Library) - List
List ํ์ค ์ํ์ค ์ปจํ ์ด๋. ๋ ธ๋ ๊ธฐ๋ฐ (์๋ฐฉํฅ ์ฐ๊ฒฐ๋ฆฌ์คํธ) ๋ ธ๋ ๊ธฐ๋ฐ์ด๊ธฐ ๋๋ฌธ์ ์ธ๋ฑ์ค ์ ๊ทผ์ด ์๋๊ณ , ์ค๋ก์ง ์์ฐจ ์ ๊ทผ๋ง ํ์ฉํ๋ค. (ํ์์ ๋ถ๋ฆฌํ๋ค.) ๋ฐฐ์ด๊ณผ ๋ฌ๋ฆฌ ํฌํ์ํ๊ฐ ์กด์ฌํ์ง ์๋๋ค. (์ฌํ ๋น๊ณผ ๋ณต์ฌ๊ฐ ํ์์์ด์, ๋น๋ฒํ ์ฝ์ ๊ณผ ์ญ์ ์ ์ ๋ฆฌํ๋ค.) [ list์ ์ ์ธ ] list ํค๋๋ฅผ ํฌํจ์ํจ ํ, list '๋ณ์ ์ด๋ฆ'์ ํตํด ์ ์ธ. ์๋ฃํ ์์น์๋ ๊ตฌ์กฐ์ฒด๋ ํด๋์ค๋ ์ฌ ์ ์๋ค. [ list์ ์์ ์ฝ์ ๊ณผ ์ญ์ ] push_back : ๋ค์์ ๋ถํฐ ์์๋ฅผ ์ฝ์ ํ๋ค. push_front : ์์์ ๋ถํฐ ์์๋ฅผ ์ฝ์ ํ๋ค. pop_back : ๊ฐ์ฅ ๋ค์ ์๋ ์์๋ฅผ ํ์ฌ list์์ ์ ๊ฑฐํ๋ค. pop_front : ๊ฐ์ฅ ์์ ์๋ ์์๋ฅผ ํ์ฌ list์์ ์ ๊ฑฐํ๋ค. size : list..
2019.06.21