TreeSet - set

CodeKong의 기술 블로그·2023년 6월 22일
1

자료구조

목록 보기
4/4

set C++의 STL중의 하나로서 균형이진트리 구조로 되어있습니다.
해싱을 기반으로 데이터들을 관리해주는 자료구조 입니다.

set 형태입니다.

삽입, 삭제, 탐색 등 모든 함수의 시간복잡도가 O(logN) 입니다.

선언

#include <set>

set<int> s;

삽입

s.insert(value)

탐색

s.find(value)

찾지 못했다면 s.end() 값을 반환합니다.
찾았다면 해당 iterator 값을 반환합니다.

- 이분탐색

s.lower_bound(E)
s.upper_bound(E)

lower_bound : E를 포함하여 큰 값 중 가장 가까운 iterator를 찾아줍니다
upper_bound : E보다 큰 값 중 가장 가까운 iterator를 찾아줍니다

접근법

//key
for(auto it = s.begin();it!=s.end();++it){
	cout<<*it;
}

접근법2

 // 같은 결과
cout << *s.rbegin();
cout << *(--s.end());

rbegin()은 r.end()의 바로 전을 가리킵니다.

삭제

s.erase(value)

0개의 댓글