TheDeveloperBlog.com

Home | Contact Us

C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML

C++ set crbegin() Function

C++ set crbegin() Function with tutorial for beginners and professionals with examples on constructor, destructor, operator=(), begin(), cbegin(), cend(), end(), crbegin(), empty(), max_size(), clear(), emplace_hint(), key_comp(), swap() etc.

<< Back to CPP

C++ set crbegin()

C++ set crbegin() function is used to return a constant reverse iterator referring to the last element in the set container.

A constant reverse iterator of set moves in reverse direction and incrementing it until it reaches to the beginning (First element) of the set container and points to the constant element.

Syntax

const_reverse_iterator crbegin() const noexcept;  	      //since C++ 11

Parameter

None

Return value

It returns a constant reverse iterator pointing to the last element of the set.

Parameter

None

Return Value

It returns a constant reverse iterator pointing to the last element of the multimap.

Complexity

Constant.

Iterator validity

No changes.

Data races

The container is accessed.

Concurrently accessing the elements of a set is safe.

Exception Safety

This function never throws exceptions.

Example 1

Let's see the simple example for crbegin() function:

#include <iostream>
#include <set>

using namespace std;

int main ()
{
  set<int> myset = {50,20,40,10,30};

  cout << "myset in reverse order:";
  for (auto rit=myset.crbegin(); rit != myset.crend(); ++rit)
    cout << ' ' << *rit;

  cout << '\n';

  return 0;
}

Output:

myset in reverse order: 50 40 30 20 10

In the above example, crbegin() function is used to return a constant reverse iterator pointing to the last element in the myset set.

Because set stores the elements in sorted order of keys therefore, iterating over a set will result in above order i.e. sorted order of keys.

Example 2

Let's see a simple example to iterate over the set in reverse order using while loop:

#include <iostream>
#include <set>
#include <string>
#include <iterator>

using namespace std;
 
int main() {
 
	// Creating & Initializing a set of String & Ints
	set<string> setEx = {"bbb", "ccc", "aaa", "ddd"};

	// Create a set iterator and point to the end of set
	 set<string>::const_reverse_iterator it = setEx.crbegin();
 
	// Iterate over the set using Iterator till beginning.
	while (it != setEx.crend()) {
		// Accessing KEY from element pointed by it.
		string word = *it;
 
		cout << word << endl;
 
		// Increment the Iterator to point to next entry
		it++;
	}
	return 0;
}

Output:

ddd
ccc
bbb
aaa

In the above example, we are using while loop to const_iterate over the set in reverse order and crbegin() function initializing the last element of the set.

Because set store the elements in sorted order of keys therefore, iterating over a set will result in above order i.e. sorted order of keys.

Example 3

Let's see a simple example to get the first element of the reversed set:

#include <iostream>
#include <string>
#include <set>

using namespace std;

int main ()
{
  set<int> s1 = {20,40,10,30};
          
    auto ite = s1.crbegin();
 
    cout << "The first element of the reversed set s1 is: ";
    cout << *ite;

  return 0;
  }  

Output:

The first element of the reversed set s1 is: 40

In the above example, crbegin() function returns the first element of the reversed set s1 i.e. 40.

Example 4

Let's see a simple example to sort and calculate the highest marks:

#include <iostream>
#include <string>
#include <set>

using namespace std;

int main ()
{
  set<int> marks = {400, 220, 300, 250, 365};

   cout << "Marks" << " | " << "Roll Number" << '\n';
   cout<<"______________________\n";
   
  set<int>::const_reverse_iterator rit;
  for (rit=marks.crbegin(); rit!=marks.crend(); ++rit)
    cout << *rit<< '\n';

    auto ite = marks.crbegin();
 
    cout << "\nHighest Marks is: "<< *ite<<" \n";

  return 0;
  }

Output:

Marks | Roll Number
______________________
400
365
300
250
220

Highest Marks is: 400

In the above example, a set marks is implemented where the elements of this set are stored as keys. Function crbegin() enables us to take advantage of the auto sorting in sets, and to identify the highest marks.






Related Links:


Related Links

Adjectives Ado Ai Android Angular Antonyms Apache Articles Asp Autocad Automata Aws Azure Basic Binary Bitcoin Blockchain C Cassandra Change Coa Computer Control Cpp Create Creating C-Sharp Cyber Daa Data Dbms Deletion Devops Difference Discrete Es6 Ethical Examples Features Firebase Flutter Fs Git Go Hbase History Hive Hiveql How Html Idioms Insertion Installing Ios Java Joomla Js Kafka Kali Laravel Logical Machine Matlab Matrix Mongodb Mysql One Opencv Oracle Ordering Os Pandas Php Pig Pl Postgresql Powershell Prepositions Program Python React Ruby Scala Selecting Selenium Sentence Seo Sharepoint Software Spellings Spotting Spring Sql Sqlite Sqoop Svn Swift Synonyms Talend Testng Types Uml Unity Vbnet Verbal Webdriver What Wpf