set::empty() in C++ STL
Sets are a type of associative containers in which each element has to be unique, because the value of the element identifies it. The value of the element cannot be modified once it is added to the set, though it is possible to remove and add the modified value of that element.
empty() function is used to check if the set container is empty or not.
Syntax :
setname.empty() Parameters : No parameters are passed. Returns : True, if set is empty False, Otherwise
Examples:
Input : myset{1, 2, 3, 4, 5}; myset.empty(); Output : False Input : myset{}; myset.empty(); Output : True
Errors and Exceptions
1. It has a no exception throw guarantee.
2. Shows error when a parameter is passed.
// INTEGER SET // CPP program to illustrate // Implementation of empty() function #include <iostream> #include <set> using namespace std; int main() { // set declaration set< int > myset{}; // checking if set is empty if (myset.empty()) { cout << "True" ; } else { cout << "False" ; } return 0; } |
Output:
True
// CHARACTER SET // CPP program to illustrate // Implementation of empty() function #include <iostream> #include <set> using namespace std; int main() { // set declaration set< char > myset{ 'A' , 'b' }; // checking if set is empty if (myset.empty()) { cout << "True" ; } else { cout << "False" ; } |
Output:
False
Time Complexity : O(1)
Application :
Given a set of integers, find the sum of the all the integers.
Input : 1, 5, 6, 3, 9, 2 Output : 26 Explanation - 1+5+6+3+9+2 = 26
Algorithm
1. Check if the set is empty, if not add the first element to a variable initialised as 0, and erase the first element.
2. Repeat this step until the set is empty.
3. Print the final value of the variable.
// CPP program to illustrate // Application of empty() function #include<iostream> #include<set> using namespace std; int main() { // sum variable declaration int sum = 0; // set declaration set< int > myset{ 1, 5, 6, 3, 9, 2 }; // finding sum of elements while (!myset.empty()){ sum+= *myset.begin(); myset.erase(myset.begin()); } // print sum cout<<sum<<endl; return 0; } |
Output:
26
Contact Us