求助数据结构的朴素匹配算法

Medjedo 2019-01-25 12:50:03
n和m为主串和模式串的长度,书上认为最坏情况如模式串0001,主串00000001,while循环次数为(n-m+1)*m=20,但若主串为00000000即根本找不到且全比较至最后应该才是最坏情况吧?这样为20+(n-1)n/2=26
...全文
64 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Medjedo 2019-01-25
  • 打赏
  • 举报
回复
引用 2 楼 早打大打打核战争的回复:
模式串四个字符,你都匹配到了主串的最后四个字符,还需要向后测试?
所以感觉很怪,,退出条件竟然是 i,j 有一超过长度,然而如果最后一字符不等就只刚到S[0],T[0]超不过,i又回溯,,好像只加m-1=3。。
  • 打赏
  • 举报
回复
模式串四个字符,你都匹配到了主串的最后四个字符,还需要向后测试?
独孤过 2019-01-25
  • 打赏
  • 举报
回复
看书上表达的是匹配成功的最坏情况,还是不管成功与否的最坏情况

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧