Data Structure
[Data Structure] multimap ์ฌ์ฉ๋ฒ
An effort will never betray ๐
2020. 11. 8. 21:32
๋ฐ์ํ
- ์ด ๊ธ์ c++์ stl ์ค ํ๋์ธ multimap ์ฌ์ฉ๋ฒ์ ๋๋ค.
multimap
multimap์ map๊ณผ ๊ฐ์ด key์ value๋ก ๊ตฌ์ฑ๋ container์ ๋๋ค.
map๊ณผ๋ ๋ฌ๋ฆฌ key์ ์ค๋ณต์ด ํ์ฉํฉ๋๋ค.
multimap์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ค๋ฆ์ฐจ์ ์ ๋ ฌ๋์ด ์์ต๋๋ค.
multimap์ ์ฌ์ฉํ๊ธฐ ์ํด์๋ #include< map >์ ์ ์ธํด์ผ ํฉ๋๋ค.
multimap์ binary search tree์ผ๋ก ์ดํ๋๊ธฐ ๋๋ฌธ์ ํ์์ ์๊ฐ ๋ณต์ก๋๋ O(log n)์ ๋๋ค.
ํจ์
empty()
- multimap์ด ๋น์ด์๋์ง ํ์ธํ๋ ํจ์
- if multimap is empty, return 1 else 0
size()
- mutlimap์ ํฌ๊ธฐ๋ฅผ ๋ฐํํ๋ ํจ์
- return size_type (unsigned int)
insert(pair)
- multimap์ pair๋ฅผ ์ถ๊ฐํ๋ ํจ์
erase(key)
- multimap์์ key๋ฅผ ๊ฐ์ง ๊ฐ๋ค์ ๋ชจ๋ ์ญ์ ํ๋ ํจ์
clear()
- multimap์ ์ด๊ธฐํํ๋ ํจ์
find(key)
- multimap์์ key์ ํด๋นํ๋ ์์๊ฐ ์๋์ง ์ฐพ๋ ํจ์
- if key is contained, return iterator else multimap::end
- ๋์ผํ key๊ฐ ์์ ๊ฒฝ์ฐ ๊ฐ์ฅ ๋จผ์ ์๋ key์ iterator๋ฅผ ๋ฐํ
count(key)
- multimap์์ key๋ฅผ ๊ฐ์ง๋ ์์์ ๊ฐฏ์๋ฅผ ๋ฐํํ๋ ํจ์
ํ์ ๋ฐฉ๋ฒ
- index๊ฐ ์๋ iterator๋ก ์์ฐจ์ ์ ๊ทผ์ด ๊ฐ๋ฅํฉ๋๋ค.
- ์์ : begin(), ๋ : end()
- ๋ฐ๋ณต๋ฌธ์์ auto ํ์ฉ์ด ๊ฐ๋ฅํฉ๋๋ค.
์ค์ต
๊ฒฐ๊ณผ
- ์ถ๊ฐ๋ก ๊ถ๊ธํ ์ ์ด๋ ์์ ํ ๋ถ๋ถ ์์ผ๋ฉด ๋๊ธ๋ก ๋จ๊ฒจ์ฃผ์ธ์.
๋ฐ์ํ