La función equal() en la biblioteca boost de C++ se encuentra en las pruebas de encabezado ‘boost/algorithm/cxx11/equal.hpp’ para ver si dos secuencias contienen valores iguales. Devuelve un valor booleano que determina si ambas secuencias son iguales o no.
Sintaxis :
bool equal ( InputIterator1 first1, InputIterator1 second1, InputIterator2 first2, InputIterator2 second2 ) or bool equal ( InputIterator1 first1, InputIterator1 second1, InputIterator2 first2, InputIterator2 second2, BinaryPredicate pred )
Parámetros : la función acepta parámetros como se describe a continuación:
- first1 : Especifica los iteradores de entrada a las posiciones iniciales en la primera secuencia.
- second1 : Especifica los iteradores de entrada a las posiciones finales en la primera secuencia.
- first2 : Especifica los iteradores de entrada a las posiciones iniciales en la segunda secuencia.
- second2 : especifica los iteradores de entrada a las posiciones finales en la segunda secuencia.
- p: Especifica el predicado de comparación si se especifica.
Valor devuelto : la función devuelve verdadero si ambas secuencias son iguales, de lo contrario, devuelve falso.
Nota : la función anterior se ejecuta para C++ 14 y superior.
Programa-1 :
// C++ program to implement the // above mentioned function #include <bits/stdc++.h> #include <boost/algorithm/cxx14/equal.hpp> using namespace std; // Drivers code int main() { // Declares the sequences int a[] = { 1, 2, 5, 6, 8 }; int b[] = { 1, 2, 5, 6, 8 }; // Run the function bool ans = boost::algorithm::equal(a, a + 5, b, b + 5); // Condition to check if (ans == 1) cout << "Sequence1 and Sequence2 are equal" ; else cout << "Sequence1 and Sequence2 are not equal" ; return 0; } |
Producción:
Sequence1 and Sequence2 are equal
Programa-2 :
// C++ program to implement the // above mentioned function #include <bits/stdc++.h> #include <boost/algorithm/cxx14/equal.hpp> using namespace std; // Drivers code int main() { // Declares the sequences int a[] = { 1, 2, 5, 6, 8 }; int b[] = { 1, 2, 5 }; // Run the function bool ans = boost::algorithm::equal(a, a + 5, b, b + 5); // Condition to check if (ans == 1) cout << "Sequence1 and Sequence2 are equal" ; else cout << "Sequence1 and Sequence2 are not equal" ; return 0; } |
Producción:
Sequence1 and Sequence2 are not equal