Set Count Function

C++ set count

C++ set count function is used to return the number of elements found in the container. Since, the set container does not contain any duplicate element, this function actually returns 1 if the element with value val is present in the set container or 0 otherwise.

Syntax

Example

size_type count (const value_type& val) const;

Parameter

val : Value to be searched in the set container.

Return value

It returns 1 if the element with value val is present in the set container otherwise, returns 0.

Complexity

Logarithmic in size.

Iterator validity

No changes.

Data Races

The container is accessed.

Concurrently accessing the elements of a set is safe.

Exception Safety

If an exception is thrown, there are no changes in the container.

Example 1

Let's see the simple example to search the element with the given key value:

Example

#include <iostream>
#include <set>

using namespace std;
 
int main()
{
    // initialize container
    set<int> mp;
 
    // insert elements in random order
    mp.insert(30);
    mp.insert( 40 );
    mp.insert( 60 );
    mp.insert( 20);
    mp.insert( 50 );
 
    // checks if key 30 is present or not
    if (mp.count(30))
        cout << "The key 30 is present\n";
    else
        cout << "The key 30 is not present\n";
 
    // checks if key 100 is present or not
    if (mp.count(100))
        cout << "The key 100 is present\n";
    else
        cout << "The key 100 is not present\n";
 
    return 0;
}

Output:

Output

The key 30 is present
The key 100 is not present

In the above example, count function checks for the given value. If the element is present in the set container then it will display the message that element is present otherwise not present.

Example 2

Let's see a simple example to search for the elements of the set:

Example

#include <iostream>
#include <set>

using namespace std;

int main ()
{
  set<char> myset;
  char c;

  myset = {'a', 'c', 'f'};

  for (c='a'; c<'h'; c++)
  {
    cout << c;
    if (myset.count(c)>0)
      cout << " is an element of myset.\n";
    else 
      cout << " is not an element of myset.\n";
  }

  return 0;
}

Output:

Output

a is an element of myset.
b is not an element of myset.
c is an element of myset.
d is not an element of myset.
e is not an element of myset.
f is an element of myset.
g is not an element of myset.

In the above example, count function is used to search for the 'a' to 'h' elements in the set.

Example 3

Let's see a simple example to search keys in the set:

Example

#include <iostream>
#include <set>

using namespace std;

int main(void) {

   set<char> m = {'a','b','c','d'};
            
   if (m.count('a') == 1) {
       cout<< " 'a' is present in the set \n";
   }

   if (m.count('z') == 0) {
      cout << " 'z' is not present in the set" << endl;
   }

   return 0;
}

Output:

Output

'a' is present in the set 
'z' is not present in the set

In the above example, key 'a' is present in the set m so, it will be the value of 'a' and key 'z' is not present in the set so, there is no value of 'z'.

Example 4

Let's see a simple example:

Example

#include <set>  
#include <iostream>  
  
int main()  
{  
    using namespace std;  
    set<int> s1;  
    set<int>::size_type i;  
  
    s1.insert(1);  
    s1.insert(1);  
  
    // Keys must be unique in set, so duplicates are ignored  
    i = s1.count(1);  
    cout << "The number of elements in s1 with a sort key of 1 is: "  
         << i << "." << endl;  
  
    i = s1.count(2);  
    cout << "The number of elements in s1 with a sort key of 2 is: "  
         << i << "." << endl;  
}

Output:

Output

The number of elements in s1 with a sort key of 1 is: 1.
The number of elements in s1 with a sort key of 2 is: 0.

Input Required

This code uses input(). Please provide values below: