๐ฉ key๋ง ์๋ map ํน์ ์ ๋ ฌ๋ ์งํฉ
set์ map๊ณผ ๊ตฌ์กฐ๊ฐ ๋งค์ฐ ์ ์ฌํ๋ค. ๋จ, key๋ง ์๊ณ value๊ฐ ์๋ map์ด๋ผ๊ณ ๋ณผ ์ ์๋ค.
๋ฐ๋ผ์, ์ฌ์ฉ๋ฒ๋ map๊ณผ ํฌ๊ฒ ๋ค๋ฅด์ง ์๋ค. ์ ๋ ฌ๋ ์งํฉ์ด๋ผ๊ณ ์ ์ํ ์ด์ ๋ set์ด ๊ฐ๋ ๊ฐ๋ค์ด ์ค๋ณต์ ํ๋ฝํ์ง ์๊ณ ์ ๋ ฌ๋์ด ์๊ธฐ ๋๋ฌธ์ด๋ค.
๐ฉ ํน์ ๊ฐ์ ๋ํด ๊ฒ์์ ๋น ๋ฅด๊ฒ ํ๊ณ ์ถ์ ๊ฒฝ์ฐ
๐ฉ #include <set>
s.size() | s์ ๋ ธ๋ ๊ฐ์๋ฅผ ๋ฆฌํด |
s.empty() | s์ ์ฌ์ด์ฆ๊ฐ 0์ธ์ง ์๋์ง๋ฅผ ํ์ธ |
s.begin() | s์ ์ฒซ ๋ฒ์งธ ์์๋ฅผ ๊ฐ๋ฆฌํค๋ iterator ๋ฆฌํด |
s.end() | s์ ๋ง์ง๋ง ์์๋ฅผ ๊ฐ๋ฆฌํค๋ iterator ๋ฆฌํด |
s.insert(k) | s์ ๊ฐ์ด k์ธ ๋ ธ๋ ์ถ๊ฐ |
s.erase(k) | s์ ๊ฐ์ด k์ธ ๋ ธ๋ ์ญ์ |
s.find(k) | s์์ ๊ฐ์ด k์ธ ๋
ธ๋๋ฅผ ์ฐพ์, ํด๋น ๋
ธ๋๋ฅผ ๊ฐ๋ฆฌํค๋ iterator ๋ฆฌํด (๊ฐ์ด k์ธ ๋ ธ๋๊ฐ ์กด์ฌํ์ง ์๋ ๊ฒฝ์ฐ, s์ ๋ง์ง๋ง ์์๋ฅผ ๊ฐ๋ฆฌํค๋ iterator ๋ฆฌํด) |
s.count(k) | s์์ ๊ฐ์ด k์ธ ๋ ธ๋์ ๊ฐ์๋ฅผ ๋ฆฌํด |
set<int> s;
set<int>::iterator it;
s.insert(4); // s : 4
s.insert(1); // s : 1 4
s.insert(2); // s : 2 1 4
vector<int> v;
v.push_back(3); // v : 3
v.push_back(5); // v : 3 5
v.push_back(6); // v : 3 5 6
s.insert(v.begin(), v.end()); // s : 1 2 3 4 5 6
s.erase(4); // s : 1 2 3 5 6
s.erase(s.begin()); // s : 2 3 5 6
// ์ง์ธ ์์๋ฅผ ์
๋ ฅ๋ฐ์
int toErase;
cin >> toErase;
it = s.find(toErase);
// ์ง์ ์์๊ฐ ์กด์ฌํ๋ ์์๋ฉด ์ง์
if(it != s.end())
s.erase(it);
'๐ฉโ๐ป ํ๋ก๊ทธ๋๋ฐ > โจ ์๋ฃ๊ตฌ์กฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ธ์ ํ๋ ฌ๊ณผ ์ธ์ ๋ฆฌ์คํธ cf. ๊ทธ๋ํ (0) | 2024.04.18 |
---|---|
๋งต(Map) (0) | 2024.04.16 |
ํ์ด(Pair) (0) | 2024.04.15 |
๋ฒกํฐ(Vector) (0) | 2024.04.15 |
๋๋น ์ฐ์ ํ์(BFS) (0) | 2024.04.14 |