U E D R , A S I H C RSS

STL/set


1. set

  • 집합을 구현한 자료구조(STL에서 containter)이다.
  • 집합내에는 같은 원소가 있으면 안된다.
  • 보통 정렬이 되어있다. STL의 map도 정렬이 되어 있다.
  • include : set
    ~cpp 
    #include <set> 
    

1.1. 선언


~cpp 
set<int> s;
set<int>::iterator i;

1.2. 데이터 넣기


~cpp 
// 3개가 동일한 데이터 이므로 5 하나만 들어있다.
s.insert(5);
s.insert(5);
s.insert(5);	

1.3. 순회

  • STL의 container 들은 모두 비슷한 모양의 순회를 한다.
  • set 의 특징은 인자들이 정렬되어 있다는 점
    ~cpp 
    set<int>::iterator i;
    
    // for 에서 반복자 이용 순회
    for(set<int>::iterator i = s.begin() ; i != s.end() ; ++i) { 
    	cout << *i << endl;	// 정렬되어 있다.
    } 
    
  • 1.4. 프로그램의 예


    ~cpp 
    #include <iostream> 
    #include <set> 
    using namespace std; 
    
    int main() { 
    	int data[]={5,5,5,5,63,3,3,3,6,5};
    	set<int> s(&data[0], &data[10]);
    	
    	for(set<int>::iterator i = s.begin() ; i != s.end() ; ++i) { 
    		cout << *i << endl;	// 정렬되어 있다.
    	} 
    	
    	return 0; 
    }
    
    결과
    ~cpp 
    3
    5
    6
    63
    
    ----
    STL
    Valid XHTML 1.0! Valid CSS! powered by MoniWiki
    last modified 2021-02-07 05:27:58
    Processing time 0.0164 sec