代码随想录算法训练营第九天|KMP算法略讲与字符串总结-创新互联

KMP算法难度较大,在理解时会有很大的难度,在这里建议大家参考LeetCode28. 实现 strStr()、LeetCode459.重复的子字符串两个题目,并参照代码随想录进一步理解

成都创新互联公司提供成都做网站、网站设计、网页设计,成都品牌网站建设广告投放平台等致力于企业网站建设与公司网站制作,10余年的网站开发和建站经验,助力企业信息化建设,成功案例突破超过千家,是您实现网站建设的好选择.

网址如下:

LeetCode28文章讲解

https://programmercarl.com/0028.%E5%AE%9E%E7%8E%B0strStr.html

LeetCode459文章讲解

https://programmercarl.com/0459.%E9%87%8D%E5%A4%8D%E7%9A%84%E5%AD%90%E5%AD%97%E7%AC%A6%E4%B8%B2.html

本文中预先附上KMP算法的相关代码,供大家学习参考

(二刷再战)

void getNext(int* next, const string& s){
    int j = -1;
    next[0] = j;
    for(int i = 1; i< s.size(); i++) { // 注意i从1开始
        while (j >= 0 && s[i] != s[j + 1]) { // 前后缀不相同了
            j = next[j]; // 向前回退
        }
        if (s[i] == s[j + 1]) { // 找到相同的前后缀
            j++;
        }
        next[i] = j; // 将j(前缀的长度)赋给next[i]
    }
}

总结篇

字符串的内容相对来说比较简单,总的来看考察题型分为这几种:

  • 字符串的基本操作

  • 库函数的相关使用

  • 双指针法

  • 反转系列

  • KMP算法的相关应用(重点)

字符串类类型的题目,往往想法比较简单,但是实现起来并不容易,复杂的字符串题目非常考验对代码的掌控能力。

特别注意双指针法是字符串处理的常客。

加油💪!

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


文章标题:代码随想录算法训练营第九天|KMP算法略讲与字符串总结-创新互联
URL链接:http://bzwzjz.com/article/djdoge.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 品牌网站建设 定制网站建设 网站建设推广 商城网站建设 成都网站设计 四川成都网站设计 成都企业网站制作 成都网站建设公司 成都网站建设流程 四川成都网站建设 温江网站设计 重庆网站建设 重庆网站建设 攀枝花网站设计 企业网站建设 成都网站建设公司 宜宾网站设计 网站建设改版 手机网站制作 成都企业网站建设 成都品牌网站建设 教育网站设计方案