Set
Sets are containers that store unique elements following a specific order.
In a set, the value of an element also identifies it (the value is itself the key, of type T), and each value must be unique. The value of the elements in a set cannot be modified once in the container (the elements are always const), but they can be inserted or removed from the container.
Internally, the elements in a set are always sorted following a specific strict weak ordering criterion indicated by its internal comparison object (of type Compare).
Set containers are generally slower than unordered_set containers to access individual elements by their key, but they allow the direct iteration on subsets based on their order.
Program for set implementation in C++ STL
#include <iostream>
#include <set>
#include <string>
#include <cstdlib>
using namespace std;
int main()
{
set<int> st;
set<int>::iterator it;
int choice, item;
while (1)
{
cout<<"n---------------------"<<endl;
cout<<"Set Implementation in C++ Stl"<<endl;
cout<<"n---------------------"<<endl;
cout<<"1.Insert Element into the Set"<<endl;
cout<<"2.Delete Element of the Set"<<endl;
cout<<"3.Size of the Set"<<endl;
cout<<"4.Find Element in a Set"<<endl;
cout<<"5.Dislplay by Iterator"<<endl;
cout<<"6.Exit"<<endl;
cout<<"Enter your Choice: ";
cin>>choice;
switch(choice)
{
case 1:
cout<<"Enter value to be inserted: ";
cin>>item;
st.insert(item);
break;
case 2:
cout<<"Enter the element to be deleted: ";
cin>>item;
st.erase(item);
break;
case 3:
cout<<"Size of the Set: ";
cout<<st.size()<<endl;
break;
case 4:
cout<<"Enter the element to be found: ";
cin>>item;
it = st.find(item);
if (it != st.end())
cout<<"Element "<<*it<<" found in the set" <<endl;
else
cout<<"No Element Found"<<endl;
break;
case 5:
cout<<"Displaying Map by Iterator: ";
for (it = st.begin(); it != st.end(); it++)
{
cout << (*it)<<" ";
}
cout<<endl;
break;
case 6:
exit(1);
break;
default:
cout<<"Wrong Choice"<<endl;
}
}
return 0;
}
Sample Output:
--------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 1 Enter value to be inserted: 1 --------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 1 Enter value to be inserted: 2 --------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 1 Enter value to be inserted: 3 --------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 1 Enter value to be inserted: 4 --------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 1 Enter value to be inserted: 5 --------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 1 Enter value to be inserted: 4 --------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 1 Enter value to be inserted: 3 --------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 1 Enter value to be inserted: 2 --------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 1 Enter value to be inserted: 1 --------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 3 Size of the Set: 5 --------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 5 Displaying Map by Iterator: 1 2 3 4 5 --------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 4 Enter the element to be found: 3 Element 3 found in the set --------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 2 Enter the element to be deleted: 5 --------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 3 Size of the Set: 4 --------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 5 Displaying Map by Iterator: 1 2 3 4 --------------------- Set Implementation in C++ Stl --------------------- 1.Insert Element into the Set 2.Delete Element of the Set 3.Size of the Set 4.Find Element in a Set 5.Dislplay by Iterator 6.Exit Enter your Choice: 6 ------------------