Dada una string, la tarea es contar el número de palabras que se repiten en esa string en particular en Golang.
Ejemplo:
Input: s = "She is mother of my mother." Output: She = 1 is = 1 mother = 2 of = 1 my = 1
Para contar el número de palabras repetidas, primero, la string se toma como entrada y luego se usa la función strings.Fields() para dividir la string. Se define una función «repetición» para contar el número de palabras que se repiten.
A continuación se muestra el programa en Golang para contar el número de palabras repetidas en una string dada.
// Golang program to count the number of // repeating words in given Golang String package main import ( "fmt" "strings" ) func repetition(st string) map[string]int { // using strings.Field Function input := strings.Fields(st) wc := make(map[string]int) for _, word := range input { _, matched := wc[word] if matched { wc[word] += 1 } else { wc[word] = 1 } } return wc } // Main function func main() { input := "betty bought the butter , the butter was bitter , " + "betty bought more butter to make the bitter butter better " for index, element := range repetition(input) { fmt.Println(index, "=", element) } }
Producción:
the = 3 , = 2 bitter = 2 to = 1 make = 1 better = 1 betty = 2 bought = 2 butter = 4 was = 1 more = 1
Explicación: En el programa anterior, primero tomamos una string como entrada y luego dividimos esa string usando la función strings.Fields(). Si se ha producido la misma palabra, el recuento aumenta en uno; de lo contrario, se devuelve el valor 1, lo que implica que la palabra aparece solo una vez en la string.
Publicación traducida automáticamente
Artículo escrito por preetikagupta8171 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA