Eliminar todas las apariciones de un carácter de una string usando STL

Dada una string S y un carácter C , la tarea es eliminar todas las ocurrencias del carácter C de la string dada.

Ejemplos:

Entrada: vS = “GFG IS FUN”, C = ‘F’ 
Salida: GG IS UN 
Explicación: 
Al eliminar todas las apariciones del carácter ‘F’, S se modifica por “GG IS UN”. 
Por lo tanto, la salida requerida es GG IS UN

Entrada: S = “POR FAVOR ELIMINAR LOS ESPACIOS”, C = ‘ ‘ 
Salida: POR FAVOR ELIMINAR LOS ESPACIOS 
Explicación: 
Al eliminar todas las apariciones del carácter ‘ ‘, S se modifica por “GG ES UN”. 
 

Enfoque: la idea es utilizar el método erase() y la función remove() de C++ STL . A continuación se muestra la sintaxis para eliminar todas las apariciones de un carácter de una string.

S.borrar(eliminar(S.comienzo(), S.fin(), c), S.fin())

A continuación se muestra la implementación del enfoque anterior:

C++

// C++ program of the above approach
#include <algorithm>
#include <iostream>
using namespace std;
 
// Function to remove all occurrences
// of C from the string S
string removeCharacters(string S, char c)
{
 
    S.erase(remove(
                S.begin(), S.end(), c),
            S.end());
 
    return S;
}
 
// Driver Code
int main()
{
 
    // Given String
    string S = "GFG is Fun";
    char C = 'F';
    cout << "String Before: " << S << endl;
 
    // Function call
    S = removeCharacters(S, C);
 
    cout << "String After: " << S << endl;
    return 0;
}
Producción: 

String Before: GFG is Fun
String After: GG is un

 

Complejidad de Tiempo: O(N 2 )
Espacio Auxiliar: O(1)

Publicación traducida automáticamente

Artículo escrito por rohitkumar172 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 *