Rumah >pembangunan bahagian belakang >Golang >golang mengulang aksara terpanjang secara berterusan
editor php Baicao memperkenalkan anda kepada kaedah penyelesaian masalah yang menarik - "golang terus mengulang watak terpanjang". Inti masalah ini adalah untuk mencari aksara yang paling berturut-turut dan nombor mereka dalam rentetan. Di Golang, kita boleh mencapai fungsi ini dengan menggelung setiap aksara rentetan dan menggunakan pembilang dan pembolehubah maksimum. Dengan algoritma yang mudah dan cekap ini, kami boleh menyelesaikan masalah ini dengan mudah dan mendapatkan hasil yang tepat. Seterusnya, mari kita belajar tentang proses pelaksanaan khusus!
package main import ( "fmt" ) type Result struct { C rune // character L int // count } func main() { fmt.Print(LongestRepetition("")) } func LongestRepetition(text string) Result { if text == "" { return Result{} } var max Result if len(text) == 1 { max.C = rune(text[0]) max.L = 1 return max } var count Result for _, s := range text { if count.C == s { count.L++ count.C = s if count.L > max.L { max.C = count.C max.L = count.L } } else { count.L = 1 count.C = s } } return max }
////
dijangka
Saya cuba melengkapkan https://www.codewars.com/kata/586d6cefbcc21eed7a001155/train/go Watak yang paling lama diulang berturut-turut Untuk ujian saya ia berfungsi dengan baik Tetapi apabila saya menolak untuk cw ia gagal untuk menyelesaikan ujian bengkok tolong saya Mungkin saya boleh menambah baik kod saya di suatu tempat atau sesuatu yang saya keliru
Penyelesaian anda terlalu rumit. memudahkan.
type result struct { c rune // character l int // count } func longestrepetition(text string) result { max := result{} r := result{} for _, c := range text { if r.c != c { r = result{c: c} } r.l++ if max.l < r.l { max = r } } return max }
Time: 1737ms Passed: 2 Failed: 0 Test Results: Fixed Tests it should work with the fixed tests Random Tests it should work with the random tests You have passed all of the tests! :)
Atas ialah kandungan terperinci golang mengulang aksara terpanjang secara berterusan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!