- 노드 기반 컨테이너이며 균형 이진트리로 구현되어있다.
- key라 불리는 원소들의 집합으로 이루어진 컨테이너 이다.
- 중복이 허용 되지 않는다.
- insert 함수에 의해 삽입되면 자동으로 정렬된다.
set의 사용법
#include <set>
using namespace std;
int main() {
set<int> s1;
set<pair<int, string> > s2;
return 0;
}
- <set> 헤더 파일을 선언해주어야 한다.
- set<type> 변수명; 으로 선언한다.
set의 멤버 함수
- s.begin()
- 맨 첫번째 원소를 가리키는 iterator를 return 한다.
- s.end()
- 맨 마지막 원소의 다음을 가리키는 iterator를 return 한다.
- s.rbegin()
- s.rend()
- s.clear()
- 모든 원소를 제거
- s.count(k)
- s.empty()
- set s가 비어있는지 확인 (bool형으로 return)
- s.insert(k)
- 원소 k를 삽입한다.
- 삽입시에 자동으로 정렬되고, 중복은 제거된다.
- s.insert(iter, k)
- s.erase(iter)
- iter가 가리키는 원소를 제거한다.
- 제거 한다음 제거 한 원소의 다음 원소를 가리키는 iterator를 return 한다.
- s.erase(start, end)
- start부터 end 범위의 원소를 모두 제거한다.
- s.find(k)
- 원소 k를 가리키는 iterator를 return한다.
- 원소 k가 없다면 s.end()와 같은 반복자를 return한다.
- s2.swap(s1)
- s.upper_bound(k)
- 원소 k가 끝나는 구간의 iterator 이다.
- s.lower_bound(k)
- 원소 k가 시작하는 구간의 iterator 이다.
- s.equal_range(k)
- s.value_comp()
- s.key_comp()
- s.size()
- s의 사이즈를 reutrn한다.
- s.max_size()
'PS > STL' 카테고리의 다른 글
lower_bound / upper_bound (0) | 2022.02.03 |
---|---|
sort / stable_sort (0) | 2022.01.30 |