亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在不打印的情況下,“模式”字符串的結果“計數”。這是代碼

在不打印的情況下,“模式”字符串的結果“計數”。這是代碼

Go
梵蒂岡之花 2021-03-31 17:15:45
我試圖實現knuth morris pratt算法。文本中出現的圖案外觀不會得到打印。count變量保存模式在字符串中出現了多少次的值。請幫助解決問題package main    import "fmt"    func kmppre(pattern string, shiftarr []int) {        m := len(pattern)        i := 0        j := -1        for i < m {            for j >= 0 && pattern[i] != pattern[j] {                j = shiftarr[j]            }            i++            j++            shiftarr[i] = j        }    }    func kmp(text string, pattern string) int {        n := len(text)        m := len(pattern)        count := 0        i, j := 0, 0        shiftarr := make([]int, m+1)        kmppre(pattern, shiftarr)        for i < n {            for j >= 0 && text[i] != pattern[j] {                j = shiftarr[j]            }            i++            j++            if j == m {                count++                j = shiftarr[j]            }        }        return count    }    func main() {        fmt.Print("enter the text \n")        var text string        fmt.Scan(&text)        fmt.Print("enter the pattern string\n")        var pattern string        fmt.Scan(&pattern)        a := kmp(text, pattern)        fmt.Println(a)    }
查看完整描述

1 回答

?
鳳凰求蠱

TA貢獻1825條經驗 獲得超4個贊

對于j> = 0 && pattern [i]!= pattern [j] {

應該

對于j> 0 && pattern [i]!= pattern [j] {


查看完整回答
反對 回復 2021-04-19
  • 1 回答
  • 0 關注
  • 273 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號