STL 학습 노트 4-set and multiset
8639 단어 학습 노트
사용법 소개
1.insert() 함수
먼저 머리 파일 set에 #include "set"포함
set <int> test1;
set <int>::iterator it1;
multiset <int> test2;
multiset <int>::iterator it2;
//////////////////////////////////////////////////////////////////////////
//
it1 = test1.begin();
it2 = test2.begin();
for (int j=1;j<=10;j++)
{
test1.insert(it1,j);//
test2.insert(it2,j*10);
}
2、출력하면 주소를 직접 찾을 수 있습니다
cout<<"Elements:";
for ( it1=test1.begin() ; it1 != test1.end(); it1++ )
cout << " " << *it1;//
cout<<endl;
3. find () and erase () 는 요소를 찾고 삭제합니다. 요소가 존재하지 않으면find에서 오류가 발생합니다.
// , find
it1 = test1.find(4);//
test1.erase(it1);//
test1.erase(test1.find(11));//
for ( it1=test1.begin() ; it1 != test1.end(); it1++ )
cout << " " << *it1;
cout<<endl;
4.count() 함수, 원소계수,set에서 원소의 존재 여부를 판단하는 데 사용
//count, , , set
test2.insert(90);
cout<<"multiset :"<<test2.count(90)<<endl;
for (int i=0;i<6; i++)
{
cout << i;
if (test1.count(i)>0)//
cout << " is an element of test1.
";
else
cout << " is not an element of test1.
";
}
5、equal_range () 함수는 첫 번째 > = 키워드의 교체기와 > 키워드의 교체기를 되돌려줍니다. 즉, 당신이 찾으려는 원소의 바늘과 다음 원소의 바늘입니다.
//equal_range() >= >
pair<set<int>::iterator,set<int>::iterator> ret;// pair
ret = test1.equal_range(5);// 5 , ,
cout<<"lower bound points to:"<<*ret.first<<endl;
cout<<"upper bound points to:"<<*ret.second<<endl;//
6、 lower_bound () 는 어떤 값보다 큰 첫 번째 요소를 가리키는 교체기를 되돌려줍니다.
upper_bound () 는 어떤 값 요소보다 큰 교체기를 되돌려줍니다.
이 두 함수를 결합하면 어느 범위 내의 요소를 수정하거나 삭제할 수 있다
set <int>::iterator itlower,itupper;
itlower = test1.lower_bound(5);// 5
itupper = test1.upper_bound(9);// 9
test1.erase(itlower,itupper);//erase data from 5 to 10
cout<<"Element:";
for ( it1=test1.begin() ; it1 != test1.end(); it1++ )
cout << " " << *it1;
cout<<endl;
7 swap은 두 개의 집합 변수 중 모든 요소를 교환합니다
//swap
set <int> test3;
set <int>::iterator it3;
it3 = test3.begin();
for (int j=1;j<=10;j++)
{
test3.insert(it3,j*2);//
}
swap(test1,test3);
8, empty (),clear () 데이터 비우기
test1.clear();
if (test1.empty())
{
cout<<"set is null"<<endl;
}
set 집합 함수는 매우 간단합니다. 이렇게 많은 상용 기능들이 있습니다.더 복잡한 건 유연하게 사용하고 있어요.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
STL 학습노트(6) 함수 객체모방 함수는 모두pass-by-value이다 함수 대상은 값에 따라 전달되고 값에 따라 되돌아오기 때문에 함수 대상은 가능한 한 작아야 한다(대상 복사 비용이 크다) 함수 f와 대상 x, x 대상에서 f를 호출하면:...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.