list::unique() es una función incorporada en C++ STL que elimina todos los elementos consecutivos duplicados de la lista. Funciona solo en la lista ordenada .
Sintaxis:
list_name.unique(BinaryPredicate name)
Parámetros: la función acepta un parámetro único y opcional que es un predicado binario que devuelve verdadero si los elementos deben tratarse como iguales. Tiene la siguiente sintaxis:
bool name(data_type a, data_type b);
Valor devuelto: Esta función no devuelve nada.
A continuación se muestra la implementación de la función anterior:
CPP
// C++ program to illustrate the // unique() function #include <bits/stdc++.h> using namespace std; // Function for binary_predicate bool compare(double a, double b) { return ((int)a == (int)b); } // Driver code int main() { list<double> list = { 2.55, 3.15, 4.16, 4.16, 4.77, 12.65, 12.65, 13.59 }; cout << "List is: "; //sort the list list.sort(); // unique operation on list with no parameters list.unique(); // starts from the first element // of the list to the last for (auto it = list.begin(); it != list.end(); ++it) cout << *it << " "; // unique operation on list with parameter list.unique(compare); cout << "\nList is: "; // starts from the first element // of the list to the last for (auto it = list.begin(); it != list.end(); ++it) cout << *it << " "; return 0; }
Producción
List is: 2.55 3.15 4.16 4.77 12.65 13.59 List is: 2.55 3.15 4.16 12.65 13.59
Complejidad de tiempo : O (nlogn) debido a la clasificación de la lista
Espacio Auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por Harsha_Mogali y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA