Las listas son contenedores utilizados en C++ para almacenar datos de forma no contigua. Normalmente, las arrays y los vectores son de naturaleza contigua, por lo que las operaciones de inserción y eliminación son más costosas en comparación con la opción de inserción y eliminación en las listas.
La función empty() se usa para verificar si el contenedor de la lista está vacío o no. Sintaxis:
listname.empty() Parameters : No parameters are passed. Returns : True, if list is empty False, Otherwise
Ejemplos:
Input : list list{1, 2, 3, 4, 5}; list.empty(); Output : False Input : list list{}; list.empty(); Output : True
Errores y excepciones
- Tiene una garantía de tiro sin excepción.
- Muestra error cuando se pasa un parámetro.
CPP
// 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; }
Producción:
True
Aplicación: dada una lista de números enteros, encuentre la suma de todos los números enteros.
Input : 1, 5, 6, 3, 9, 2 Output : 26 Explanation - 1+5+6+3+9+2 = 26
Algoritmo
- Compruebe si la lista está vacía, si no, agregue el elemento frontal a una variable inicializada como 0 y extraiga el elemento frontal.
- Repita este paso hasta que la lista esté vacía.
- Imprime el valor final de la variable.
CPP
// 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; }
Producción:
26
La función size() se usa para devolver el tamaño del contenedor de la lista o el número de elementos en el contenedor de la lista. Sintaxis:
listname.size() Parameters : No parameters are passed. Returns : Number of elements in the container.
Ejemplos:
Input : list list{1, 2, 3, 4, 5}; list.size(); Output : 5 Input : list list{}; list.size(); Output : 0
Errores y excepciones
- Tiene una garantía de tiro sin excepción.
- Muestra error cuando se pasa un parámetro.
CPP
// 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; }
Producción:
5
Aplicación: dada una lista de números enteros, encuentre la suma de todos los números enteros.
Input : 1, 5, 6, 3, 9, 2 Output : 26 Explanation - 1+5+6+3+9+2 = 26
Algoritmo
- Compruebe si el tamaño de la lista es 0, si no, agregue el elemento frontal a una variable inicializada como 0 y extraiga el elemento frontal.
- Repita este paso hasta que la lista esté vacía.
- Imprime el valor final de la variable.
CPP
// 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; }
Producción:
26
Veamos las diferencias en forma tabular -:
lista::vacío() | lista::tamaño() | |
1. | Se utiliza para devolver si el contenedor de la lista está vacío. | Se utiliza para devolver el número de elementos en el contenedor de lista. |
2. | No toma ningún parámetro. | No toma parámetros. |
3. | Su tipo de retorno es booleano. | Su tipo de retorno es de tipo entero. |
4. | Su complejidad es constante. | Su complejidad es constante. |
5. | Su validez de iterador no cambia. | Su validez de iterador no cambia. |
Publicación traducida automáticamente
Artículo escrito por AyushSaxena y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA