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