Gegeben ein Satz mit n Wörtern / Strings. Entfernen Sie alle doppelten Wörter / Zeichenfolgen, die einander ähnlich sind.

Beispiele:

Eingabe: Geeks für Geeks
Ausgabe: Geeks für
Input: Python ist großartig und Java ist auch großartig
Ausgabe: ist auch Java Python und großartig

Wir können dieses Problem schnell mit der Python Counter() -Methode lösen . Der Ansatz ist sehr einfach.

1) Teilen Sie den durch Leerzeichen getrennten Eingabesatz in Wörter auf.
2) Um alle diese Zeichenfolgen zuerst zusammenzubringen, verbinden wir jede Zeichenfolge in einer bestimmten Liste von Zeichenfolgen.
3) Erstellen Sie nun ein Wörterbuch mit der Counter-Methode, bei der Zeichenfolgen als Schlüssel und deren Häufigkeit als Werte verwendet werden.
4) Verbinden Sie jedes Wort, um eine einzelne Zeichenfolge zu bilden.



from collections import Counter 
  
def remov_duplicates(input): 
  
    
    input = input.split(" ") 
  
    
    for i in range(0, len(input)): 
        input[i] = "".join(input[i]) 
  
    
    
    
    UniqW = Counter(input) 
  
    
    s = " ".join(UniqW.keys()) 
    print (s) 
  
if __name__ == "__main__": 
    input = 'Python is great and Java is also great'
    remov_duplicates(input) 

Ausgabe:

ist auch Java Python und toll

Alternative Methode:-

s = "Python is great and Java is also great"
l = s.split() 
k = [] 
for i in l: 
  
    
    
    if (s.count(i)>1 and (i not in k)or s.count(i)==1): 
        k.append(i) 
print(' '.join(k)) 
Ausgabe:-
Python ist großartig und Java auch