一,关于next的求法
就是比较从0到当前值减一是否有相同值(即正着看和倒着看对比),最后结果加一。
直接上图:
求abaabc的next值和aabaabaabaac的next值
留一个小问题可以自己试着做一下,串“ababaaababaa”的next值为011234223456。
二,关于nextval的求法
nextval根据next值求,如果x位置和next[x]的字符相同,则nextval[x]=nextval[next[x]],否则nextval[x]=next[x]
(或者可以理解为相同则变,不同不变)
直接上图:
求ababaabab的nextval值
可能这篇文章文字描述较少,只要把两幅图看懂,就可以做题了。
如果还没看懂,可以私聊我,再亲自教你
今天的文章关于KMP算法中next和nextval的算法思路分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/7774.html