Eliminar palabras duplicadas/repetidas de String

Java

import java.io.*;
  
class GFG {
  public static void main(String[] args) {
          
        System.out.println("Enter The String : ");
        String str = "geeksforgeeks";
        StringBuffer sb = new StringBuffer();
        str.chars().distinct().forEach(c -> sb.append((char) c));
        String DuplicateString = sb.toString();
        System.out.println("String after duplicates removed :"+DuplicateString);
    }
}

Dada una string, tenemos que eliminar todas las palabras duplicadas/repetidas de la string.
Ejemplos: 

Entrada: str = «Geeks for Geeks Un portal de ciencias de la computación para Geeks» 
Salida: Geeks for A portal de ciencias de la computación 
Explicación: aquí ‘Geeks’ y ‘for’ están duplicados, por lo que estas palabras se eliminan de la string 
  
Entrada: «Publicar sus propios artículos en GeeksforGeeks y comparta su conocimiento con el mundo” 
Salida: Publique sus propios artículos en GeeksforGeeks y comparta su conocimiento con el mundo 
Explicación: aquí ‘su’ es la palabra duplicada para que esa palabra se elimine de la string 

 

Creamos una tabla hash vacía. Luego divida la string dada alrededor de los espacios. Para cada palabra, primero verificamos si está en la tabla hash o no. Si no se encuentra en la tabla hash, lo imprimimos y almacenamos en la tabla hash.
Para dividir una string dada en palabras, usamos stringstream en C++.
 

CPP

// C++ program to remove duplicate
// word from string
#include <bits/stdc++.h>
using namespace std;
  
void removeDupWord(string str)
{
    // Used to split string around spaces.
    istringstream ss(str);
  
    // To store individual visited words
    unordered_set<string> hsh;
  
    // Traverse through all words
    do
    {
        string word;
        ss >> word;
  
        // If current word is not seen before.
        while (hsh.find(word) == hsh.end()) {
            cout << word << " ";
            hsh.insert(word);
        }
  
    } while (ss);
}
  
// Driver function
int main()
{
    string str = "Geeks for Geeks A Computer"
                " Science portal for Geeks";
    removeDupWord(str);
    return 0;
}
Producción: 

Geeks for A Computer Science portal

 

Publicación traducida automáticamente

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