尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
使用next数组加速匹配过程
如果我们在匹配之前得到这么一个关于模式 p 的每一个位置 index 失去匹配后模式串的匹配指针应该调整为 next[index] 的 next 数组的话那么我们的匹配过程可以变成这样代码public class StrContainsKmp { public static boolean contains(String s, String p) { int ls s.length(), lp p.length(), i 0, j 0; int[] next getNext(p);//获取关于模式串p的next数组 while(i ls - lp j lp) { if(s.charAt(i) p.charAt(j)) { i; j; /* 如果模式串p的第一个字符p[0]和字符串s的当前字符s[i]都不匹配 那么说明s中从i开始不可能匹配出p来因此换下一个开头继续尝试 */ }else if(j 0) i; /* 否则j位置不是0说明它前面有匹配成功的部分 那么此时j应该调整为next[j]的位置 */ else j next[j]; } return j lp; } }next 数组能加速匹配过程可以从下面两个方面来理解保证 i 指针不回退指导 j 指针的调整在我们匹配失败的时候它可以利用我们之前已经匹配的部分字符串以前做过的努力在保证 i字符串 s 的匹配指针不回退的情况下指导此时指针 j模式串的匹配指针应该做怎样的调整。前面的图示已经向大家说明了这一点。跳过了一些无需验证的可能性还记得我们的暴力做法吗它尝试字符串 s 中每一个可能的开头位置即验证所有的可能性而 next 数组指导 j 的调整可以跳过一些根本不可能匹配出来模式串 p 的位置如下图所示这两种理解是等价的。
RELATED

相关推荐

Osg 开发三:OpenSceneGraph 变换节点及工程实例

Osg 开发三:OpenSceneGraph 变换节点及工程实例

文章目录一 OSG Group 节点二 OSG 变换节点三 变换节点示例1 开发环境2 工程配置3 位置变换节点示例4 矩阵变换节点示例5 对齐变换节点示例其他一 OSG Group 节点 osg::Group 组节点是 OSG 的核心部分,用来组织场景图中的数据。osg::Group 上可以添加任意数量的子节…

📅 2026/9/15 0:09:48
Element Plus性能优化实战指南:三步实现高效组件库访问与开发体验

Element Plus性能优化实战指南:三步实现高效组件库访问与开发体验

Element Plus性能优化实战指南:三步实现高效组件库访问与开发体验 【免费下载链接】element-plus 🎉 A Vue.js 3 UI Library made by Element team 项目地址: https://gitcode.com/GitHub_Trending/el/element-plus Element Plus作为Vue.js 3生态…

📅 2026/11/12 14:35:25
GoPro Python自动化控制终极指南:5个高级技巧释放相机全部潜力

GoPro Python自动化控制终极指南:5个高级技巧释放相机全部潜力

GoPro Python自动化控制终极指南:5个高级技巧释放相机全部潜力 【免费下载链接】gopro-py-api Unofficial GoPro API Library for Python - connect to GoPro via WiFi. 项目地址: https://gitcode.com/gh_mirrors/go/gopro-py-api gopro-py-api是一个强大的…

📅 2026/9/15 0:16:27
MORE NEWS

更多资讯

📰

宾县电工证在哪考内部消息实操考试心里没底怕挂科怎么破

宾县电工证在哪考内部消息实操考试心里没底怕挂科怎么破 实操考试心里没底怕挂科,这是很多准备考电工证的朋友最怕遇到的问题。尤其是现在电工证的考试要求越来越高,考试内容也越来越贴近实际操作。 内部消息…

📰

你急需电工证才能上岗?官方回应来了,消防检查电工证吗?周口应届生必看

你急需电工证才能上岗?官方回应来了,消防检查电工证吗?周口应届生必看 你急需特种作业证才能上岗找工作,偏偏又搞不清消防检查电工证吗?更别提流程复杂、政策变化快,搞不好就耽误了入职机会。官方回应明确表示, 特种作业操作证是上岗的“硬门槛”…

📰

河南考电工证考试时间千万别踩坑!施工企业负责人必看

河南考电工证考试时间千万别踩坑!施工企业负责人必看 你是不是也遇到过这种情况?项目开工在即,却迟迟拿不到电工证,整个人都慌了。电工证是特种作业操作证中非常重要的一种,没有它,你连工地都进不了,更别说上岗了。 千万别踩坑…

📰

南昌特种工证怎么转异地,上岗必备攻略来了!

南昌特种工证怎么转异地,上岗必备攻略来了! 工地太忙根本没时间复习考试,你是不是也经常这样想?特别是在南昌,特种工证是上岗必备的通行证,但考证、复习、复审这些环节,对一线施工人员来说,简直成了“时间杀手”。今天,我们就从南昌特种工的实际需求…

📰

电工证考试资格要求保姆级教程:别让证件耽误你找工作

电工证考试资格要求保姆级教程:别让证件耽误你找工作 你是不是正在找电工相关的工作,却发现面试官一开口就问“有没有电工证”?别急,这不是在考验你,而是国家明文规定,特种作业人员必须持证上岗。今天这篇【电工证考试资格要求保姆级教程】,就是帮你把…

📰

特种工证社保缴费标准多久拿证 从业者必看的实操指南

特种工证社保缴费标准多久拿证 从业者必看的实操指南 你是不是正愁找不到工作?特种作业证没拿到,连面试资格都没有。现在全国很多工地、工厂、企业, 特种工证 几乎是入职门槛,特别是像 电工、焊工、高处作业、制冷空调…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬