#include<iostream>
#include <set>
using namespace std;
int main()
{
int someInts[] = {3, 6, 9, 12, 15, 18};
int someIntsSize = sizeof(someInts) / sizeof(int);
set<int> someSet (someInts, someInts + someIntsSize);
cout<<"\n1. someSet : ";
copy(someSet.begin(), someSet.end(), ostream_iterator<int>(cout, " "));
cout<<endl;
//Insert some more elements someSet.insert(0);
someSet.insert(10);
someSet.insert(20);
cout<<"\n2. someSet : ";
copy(someSet.begin(), someSet.end(), ostream_iterator<int>(cout, " "));
cout<<endl;
//Upper Bound means the next greater number set<int>::iterator it = someSet.upper_bound(5);
cout << "\nupper_bound(5) = " << *it << endl;
it = someSet.upper_bound(10);
cout << "\nupper_bound(10) = " << *it << endl;
//Lower bound means either equal or greater number it = someSet.lower_bound(5);
cout << "\nlower_bound(5) = " << *it << endl;
it = someSet.lower_bound(10);
cout << "\nlower_bound(10) = " << *it << endl;
//Equal Range returns a pair pair<set<int>::iterator,set<int>::iterator> retIt;
retIt = someSet.equal_range(5);
cout<<"\nequal_range(5) - lower bound = " << *retIt.first <<
" upper bound = " << *retIt.second << endl;
retIt = someSet.equal_range(10);
cout<<"\nequal_range(10) - lower bound = " << *retIt.first <<
" upper bound = " << *retIt.second << endl;
cout<<endl;
return 0;
}
Tuesday, February 21, 2012
Example of 'Set' and operations
Subscribe to:
Posts (Atom)