์๋ฃ๊ตฌ์กฐ
-
[Data Structure] multimap ์ฌ์ฉ๋ฒData Structure 2020. 11. 8. 21:32
์ด ๊ธ์ c++์ stl ์ค ํ๋์ธ multimap ์ฌ์ฉ๋ฒ์ ๋๋ค. multimap multimap์ map๊ณผ ๊ฐ์ด key์ value๋ก ๊ตฌ์ฑ๋ container์ ๋๋ค. map๊ณผ๋ ๋ฌ๋ฆฌ key์ ์ค๋ณต์ด ํ์ฉํฉ๋๋ค. multimap์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ค๋ฆ์ฐจ์ ์ ๋ ฌ๋์ด ์์ต๋๋ค. multimap์ ์ฌ์ฉํ๊ธฐ ์ํด์๋ #include์ ์ ์ธํด์ผ ํฉ๋๋ค. multimap์ binary search tree์ผ๋ก ์ดํ๋๊ธฐ ๋๋ฌธ์ ํ์์ ์๊ฐ ๋ณต์ก๋๋ O(log n)์ ๋๋ค. ํจ์ empty() multimap์ด ๋น์ด์๋์ง ํ์ธํ๋ ํจ์ if multimap is empty, return 1 else 0 size() mutlimap์ ํฌ๊ธฐ๋ฅผ ๋ฐํํ๋ ํจ์ return size_type (unsigned int) i..
-
[Data Structure] Set ์ฌ์ฉ๋ฒData Structure 2020. 3. 19. 23:10
C++ STL์ค ํ๋์ธ Set์ ๋ํ ์ค๋ช ์ ๋๋ค. Set ์ค๋ณต์ด ์๋ ์งํฉ์ ๋ํ๋ด๋ ์๋ฃ๊ตฌ์กฐ์ ๋๋ค. ๋ ธ๋ ๊ธฐ๋ฐ ๊ท ํ ์ปจํ ์ด๋๋ก ๊ท ํ ์ด์งํธ๋ฆฌ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. Set์ ์ฌ์ฉํ๊ธฐ ์ํด์๋ #include ์ ์ ์ธํด์ผ ํฉ๋๋ค. Set ํํ๋ก Compare์๋ ๋น๊ต ํด๋์ค๊ฐ ๋ค์ด๊ฐ๋๋ค. ๋น๊ต ํด๋์ค์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ค๋ฆ์ฐจ์ ์ ๋ ฌ์ ๋๋ค. ํจ์ insert(element) set์ element์ ์ถ๊ฐํ๋ ํจ์ if element is contained, then not insert erase(element) set์์ key ์ ๊ฑฐํ๋ ํจ์ if element is contained, then element erase clear() set์ ์ด๊ธฐํํ๋ ํจ์ empty() s..
-
[Data Structure] Priority_queue(์ฐ์ ์์ ํ) ์ฌ์ฉ๋ฒData Structure 2020. 3. 16. 20:55
C++ STL์ค ํ๋์ธ Priority_queue์ ๋ํ ์ค๋ช ์ ๋๋ค. Priority queue ์ด๋? priority queue๋ Compare(์ฐ์ ์์)์ ๋ง๊ฒ ์ค๊ณ๋ container ์ ๋๋ค. priority queue๋ heap๊ณผ ์ ์ฌํฉ๋๋ค. #include ๋ฅผ ์ ์ธํด์ผ priority queue๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. prioirty_queue , compare > ํํ ์ ๋๋ฆญํ๊ฒ ๊ตฌํ๋์ด ์ด๋ ํ type์ด๋ผ๋ ์์๊ฐ ๋ ์ ์์ผ๋ฉฐ, ๊ธฐ๋ณธ container๋ vector ์ ๋๋ค. compare๋ ๋น๊ต ํด๋์ค๋ก struct๋ฅผ ์๋กญ๊ฒ ๊ตฌํํ์ฌ ๋น๊ต ํด๋์ค๋ฅผ ๊ตฌํํ ์ ์์ต๋๋ค. ( ๊ธฐ๋ณธ๊ฐ์ผ๋ก ๋ด๋ฆผ์ฐจ์ ) ๊ธฐ๋ณธ ํจ์ empty( ) ํ๊ฐ ๋น์ด์๋์ง ..
-
[Data Structure] pair(ํ์ด) ์ฌ์ฉ๋ฒData Structure 2020. 3. 13. 02:06
C++ STL ์ค ํ๋์ธ pair์ ๋ํ ์ฌ์ฉ๋ฒ์ ๋๋ค. pair ๋? ๋ค๋ฅธ ํ์ ์ ๋ ๊ฐ์ฒด๋ฅผ ํ๋์ ๊ฐ์ฒด๋ก ํํํ๋ STL์ ๋๋ค. ๊ฐ๊ฐ์ ๊ฐ๋ค์ Member first์ Member second๋ก ์ ๊ทผํ ์ ์์ต๋๋ค. #include ๋ฅผ ์ ์ธํด์ผ pair๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ ํจ์ opearator = ๋์ ์ฐ์ฐ์ ๊ฐ๋ฅ swap ๋ ๊ฐ์ pair๋ฅผ ๋ฐ๊พธ๋ ํจ์ make_pair ( first, second ) pair๋ฅผ ๋ง๋๋ ํจ์ ์ค์ต ๊ฒฐ๊ณผ ์ถ๊ฐ๋ก ๊ถ๊ธํ ์ ์ด๋ ์์ ํ ์ฌํญ ์์ผ๋ฉด ๋๊ธ๋ก ๋จ๊ฒจ์ฃผ์ธ์.
-
[Data Stucture] map(๋งต) ์ฌ์ฉ๋ฒData Structure 2020. 2. 22. 18:58
C++ STL ์ค ํ๋์ธ map์ ๋ํ ์ค๋ช ์ ๋๋ค. map ์ด๋? map์ key์ value์ ์กฐํฉ์ผ๋ก ๊ตฌ์ฑ๋ container ์ ๋๋ค. map์ key์ compare ํจ์๋ฅผ ํตํด ์ ๋ ฌ๋ฉ๋๋ค. (๊ธฐ๋ณธ์ ์ผ๋ก ์ค๋ฆ์ฐจ์) ์ ๋๋ฆญ์ผ๋ก ๊ตฌํ๋์ด key์ value๋ ์ด๋ ํ type์ด ์ฌ ์ ์์ต๋๋ค. map์ binary search tree๋ก ๊ตฌ์ฑ๋์ด ์์ด์ unordered_map์ ๋นํด ํ์์ด ๋๋ฆฝ๋๋ค. (์๊ฐ ๋ณต์ก๋ O(log n)) map์ ์ค๋ณต์ ํ์ฉํ์ง ์๊ณ ์ค๋ณต key๋ฅผ ๊ฐ์ง๊ธฐ ์ํด์๋ multimap์ ์ฌ์ฉํด์ผ ํฉ๋๋ค. #include ์ ์ ์ธํด์ผ map ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ ํจ์ empty ( ) ๋งต์ด ๋น์ด์๋์ง ํ์ธํ๋ ํจ์ if map is empty, then r..
-
[Data Stucture] Queue (ํ) ์ฌ์ฉ๋ฒData Structure 2020. 2. 22. 17:57
C++ STL ์ค ํ๋์ธ Queue ์ฌ์ฉ๋ฒ์ ๋๋ค. Queue Queue๋ FIFO ( First In, First Out )์ผ๋ก ์ค๊ณ๋ container ์ ๋๋ค. ์ ๋๋ฆญํ๊ฒ ๊ตฌํ๋์ด ์์ด์ ์ด๋ ํ ์์๋ผ๋ ๋ฉค๋ฒ ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ์ถ๊ฐ, ์ญ์ ๊ฐ ๊ฐ๋ฅํฉ๋๋ค. #include ๋ฅผ ์ ์ธํ์ฌ์ผ queue ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ ํจ์ empty ( ) ํ๊ฐ ๋น์ด ์๋์ง ํ์ธํ๋ ํจ์ if queue is empty, then return 1 else 0 size ( ) ํ์ ํฌ๊ธฐ๋ฅผ ๋ฐํํ๋ ํจ์ return size_type (unsigned int) front ( ) ํ์ ๊ฐ์ฅ ์์ ์๋ ์์๋ฅผ ๋ฐํํ๋ ํจ์ return reference next element back ( ) ํ..
-
[Data Stucture] Stack(์คํ) ์ฌ์ฉ๋ฒData Structure 2020. 2. 22. 17:00
C++ STL ์ค ํ๋์ธ Stack ์ฌ์ฉ๋ฒ์ ๋๋ค. Stack ์ด๋? Stack์ LIFO(Last in First Out) ์ผ๋ก ์ค๊ณ๋ container ์ ๋๋ค. ์ ๋๋ฆญํ๊ฒ ๊ตฌํ๋์ด ์์ด ์ด๋ ํ ์์๋ผ๋ ๋ฉค๋ฒ ํจ์๋ฅผ ์ฌ์ฉํ์ฌ push, pop ํ ์ ์์ต๋๋ค. #include ์ ์ ์ธํด์ผ stack ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ ํจ์ empty ( ) ์คํ์ด ๋น์ด ์๋์ง ํ์ธํ๋ ํจ์ if stack is empty, then return 1 else 0 size ( ) ์คํ์ ํฌ๊ธฐ๋ฅผ ๋ฐํํ๋ ํจ์ return size_type (unsigned int) top ( ) ์คํ์ ๋ง์ง๋ง ์์๋ฅผ ๋ฐํํ๋ ํจ์ return reference top element push ( eleme..