Skip to content
Related Articles

Related Articles

Improve Article
list::empty() and list::size() in C++ STL
  • Difficulty Level : Basic
  • Last Updated : 12 Dec, 2017


Lists are containers used in C++ to store data in a non contiguous fashion, Normally, Arrays and Vectors are contiguous in nature, therefore the insertion and deletion operations are costlier as compared to the insertion and deletion option in Lists.

list::empty()

empty() function is used to check if the list container is empty or not.

Syntax :

listname.empty()
Parameters :
No parameters are passed.
Returns :
True, if list is empty
False, Otherwise

Examples:

Input  : list list{1, 2, 3, 4, 5};
         list.empty();
Output : False

Input  : list list{};
         list.empty();
Output : True

Errors and Exceptions



  1. It has a no exception throw guarantee.
  2. Shows error when a parameter is passed.




// CPP program to illustrate
// Implementation of empty() function
#include <iostream>
#include <list>
using namespace std;
  
int main()
{
    list<int> mylist{};
    if (mylist.empty()) {
        cout << "True";
    }
    else {
        cout << "False";
    }
    return 0;
}

Output:

True

Application :
Given a list 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 list is empty, if not add the front element to a variable initialised as 0, and pop the front element.
  2. Repeat this step until the list is empty.
  3. Print the final value of the variable.




// CPP program to illustrate
// Application of empty() function
#include <iostream>
#include <list>
using namespace std;
  
int main()
{
    int sum = 0;
    list<int> mylist{ 1, 5, 6, 3, 9, 2 };
    while (!mylist.empty()) {
        sum = sum + mylist.front();
        mylist.pop_front();
    }
    cout << sum;
    return 0;
}

Output:

26
list::size()

size() function is used to return the size of the list container or the number of elements in the list container.

Syntax :

listname.size()
Parameters :
No parameters are passed.
Returns :
Number of elements in the container.

Examples:

Input  : list list{1, 2, 3, 4, 5};
         list.size();
Output : 5

Input  : list list{};
         list.size();
Output : 0

Errors and Exceptions

  1. It has a no exception throw guarantee.
  2. Shows error when a parameter is passed.




// CPP program to illustrate
// Implementation of size() function
#include <iostream>
#include <list>
using namespace std;
  
int main()
{
    list<int> mylist{ 1, 2, 3, 4, 5 };
    cout << mylist.size();
    return 0;
}

Output:

5

Application :
Given a list 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 size of the list is 0, if not add the front element to a variable initialised as 0, and pop the front element.
  2. Repeat this step until the list is empty.
  3. Print the final value of the variable.




// CPP program to illustrate
// Application of size() function
#include <iostream>
#include <list>
using namespace std;
  
int main()
{
    int sum = 0;
    list<int> mylist{ 1, 5, 6, 3, 9, 2 };
    while (mylist.size() > 0) {
        sum = sum + mylist.front();
        mylist.pop_front();
    }
    cout << sum;
    return 0;
}

Output:

26
Want to learn from the best curated videos and practice problems, check out the C++ Foundation Course for Basic to Advanced C++ and C++ STL Course for foundation plus STL.  To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.



My Personal Notes arrow_drop_up
Recommended Articles
Page :