enumerar la función merge() en C++ STL

La lista::merge() es una función incorporada en C++ STL que fusiona dos listas ordenadas en una sola. Las listas deben ordenarse en orden ascendente. Si no se pasa un comparador en el parámetro, fusiona dos listas ordenadas en una sola lista ordenada. Si se pasa un comparador en el parámetro, fusiona la lista en consecuencia haciendo comparaciones internas.

  1. Sintaxis:
list1_name.merge(list2_name)
  1. Parámetros: la función acepta un solo parámetro obligatorio list2_name que especifica la lista que se fusionará en list1. Valor devuelto: La función no devuelve nada. El siguiente programa demuestra la función: Programa 1: 

CPP

// program below demonstrates the
// merge function in c++
#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    // declaring the lists
    // initially sorted
    list<int> list1 = { 10, 20, 30 };
    list<int> list2 = { 40, 50, 60 };
 
    // merge operation
    list2.merge(list1);
 
    cout << "List: ";
 
    for (auto it = list2.begin(); it != list2.end(); ++it)
        cout << *it << " ";
 
    return 0;
}
Producción:

List:  10 20 30 40 50 60

Complejidad de tiempo : O(n + m -1) donde n es el tamaño de la lista 1 y m es el tamaño de la lista 2

  1. Sintaxis:
list1_name.merge(list2_name, comparator)
  1. Parámetros: La función acepta dos parámetros que se describen a continuación:
    • list2-name: especifica la list2 que se fusionará en list1.
    • comparador – Es un predicado binario que toma dos valores del mismo tipo que los contenidos en la lista, devuelve verdadero si se considera que el primer argumento va antes que el segundo en el estricto orden débil que define, y falso en caso contrario.

Publicación traducida automáticamente

Artículo escrito por Twinkl Bajaj y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *