Cend() is the function defined in C++ STL. This function produces a constant random access iterator that identifies the deque’s past-the-end element. If the container is empty then cend() function returns the same as cbegin() function. This member function’s iterator can only be used to iterate containers; it cannot be used to change the content of the object it is pointing at.
Syntax:
const_iterator cend() const noexcept;
A const_iterator is an iterator that points to constant content.
Example 1: Below is the C program to use cend() function in deque to print elements in reverse order:
// C++ code demonstrating the use // of cend() function in deque // to print elements in reverse // order. #include <iostream> #include <deque> using namespace std;
// Driver code int main()
{ // Initialising the deque
deque< int > d = {1, 2, 3, 4, 5};
cout << "Elements of deque in reverse order: " <<
endl;
for ( auto it = d.cend() - 1;
it >= d.cbegin(); --it)
cout << *it << " " ;
cout << endl;
return 0;
} |
Elements of deque in reverse order: 5 4 3 2 1
- Time Complexity: O(n) where n is the number of elements in the deque.
- Auxiliary Space: O(1)
Example 2: Below is the C program to use cend() function in deque to print elements of deque:
// C++ code demonstrating the use // of cend() function in deque // to print elements of deque #include <iostream> #include <deque> using namespace std;
// Driver code int main()
{ // Initialising the deque
deque<string> d = { "geeks" , "for" , "geeks" };
auto itr = d.cbegin();
// Printing the deque with
// help of cend() function
while (itr != d.cend())
{
cout << *itr;
cout << " " ;
++itr;
}
return 0;
} |
geeks for geeks
- Time Complexity: O(n) where n is the number of elements in the deque.
- Auxiliary Space: O(1)