C 언어의 set 사용법
3110 단어 STL
1. set 객체의 정의 및 초기화 set 객체의 정의 및 초기화 방법은 다음과 같습니다.
set s; set s(s1); set s(b, e); 그 중에서 b와 e는 각각 교체기의 시작과 끝의 표시이다.
예를 들면 다음과 같습니다.
#include
#include
#include
using namespace std;
int main(){
vector v;
for (int i = 0; i < 10; i++){
v.push_back(i);
v.push_back(i);
}
set s(v.begin(), v.end());
printf("%d
", v.size());
printf("%d
", s.size());
return 0;
}
주의: 키는 중복될 수 없습니다.
2. set에서 데이터의 삽입은 맵과 달리 set에서 데이터는 insert() 함수를 통해서만 삽입할 수 있다.
예를 들면 다음과 같습니다.
#include
#include
#include
using namespace std;
int main(){
vector v;
for (int i = 0; i < 10; i++){
v.push_back(i);
v.push_back(i);
}
set s;
s.insert(v.begin(), v.end());
set::iterator it;
for (it = s.begin(); it != s.end(); it++){
printf("%d\t", *it);
}
printf("
");
s.insert(10);
for (it = s.begin(); it != s.end(); it++){
printf("%d\t", *it);
}
printf("
");
return 0;
}
3. set에서 원소를 찾거나 읽거나 set에서 찾거나count() 함수와find() 함수를 사용할 수 있다. 이들의 차이는 이전 맵에서 정리되었다.
예를 들면 다음과 같습니다.
#include
#include
#include
using namespace std;
int main(){
vector v;
for (int i = 0; i < 10; i++){
v.push_back(i);
v.push_back(i);
}
set s;
s.insert(v.begin(), v.end());
set::iterator it;
for (it = s.begin(); it != s.end(); it++){
printf("%d\t", *it);
}
printf("
");
printf("%d
", s.count(9));
printf("%d
", *(s.find(9)));
return 0;
}
4. set에서 원소를 삭제하고 set에서 원소를 삭제하는 데 사용되는 함수는 erase() 함수로 주로 다음과 같은 몇 가지 형식이 있다.
erase(k); erase(p); erase(b, e); 그 중에서 p가 표시하는 교체기가 가리키는 원소는 b와 e가 각각 교체기의 시작과 끝이다.
예를 들면 다음과 같습니다.
#include
#include
#include
using namespace std;
int main(){
vector v;
for (int i = 0; i < 10; i++){
v.push_back(i);
v.push_back(i);
}
set s(v.begin(), v.end());
set::iterator it;
for (it = s.begin(); it != s.end(); it++){
if (*it == 5){
break;
}
}
s.erase(it, s.end());
set::iterator it_1;
for (it_1 = s.begin(); it_1 != s.end(); it_1++){
printf("%d\t", *it_1);
}
printf("
");
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
STL 원자로 작동먼저 전연 두 갈래 나무의 정의를 살펴보자. 만약에 두 갈래 나무의 깊이를 h로 설정하면 h층을 제외한 다른 각 층(1~h-1)의 결점은 모두 최대 개수에 달하고 h층의 모든 결점은 연속적으로 맨 왼쪽에 집중된다. ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.