当前位置: 首页 > news >正文

网站开发人员篡改客户数据动漫制作专业可以升大专吗

网站开发人员篡改客户数据,动漫制作专业可以升大专吗,相机网站建设规划书,crm在线观看问题关键:完成首次匹配之后需要继续进行模式匹配。 到这一步后,我们不能直接将j 0然后开始下一轮匹配,因为已经匹配过的部分(蓝色部分)中仍然可能存在与模式串重叠的子串: 解决办法: 找到蓝…

问题关键:完成首次匹配之后需要继续进行模式匹配。

 到这一步后,我们不能直接将j = 0然后开始下一轮匹配,因为已经匹配过的部分(蓝色部分)中仍然可能存在与模式串重叠的子串:
 

解决办法:

找到蓝色部分的最大相同前后缀,利用next数组,将 j 回溯到最大前缀的后一个位置开始与目标串进行第二轮匹配。

常见的next数组有两种:

1、当前字符对应的next值是不包括本身的最大相同前后缀字符数:

2、当前字符对应的next值是包括本身的最大相同前后缀字符数:

对于第二种情况,只需在第一轮匹配完成后,如果 i 没有到达目标串末尾,让 j = next[j - 1]即可。

对于第一种情况,则需要将next扩容一位,即next数组最后一位的值是整个模式串中最大相同前后缀的字符数,然后在第一轮匹配完成后,如果 i 没有到达目标串末尾,让 j = next[ j ]即可。
 

参考代码:
next数组是第二种情况
 

#include <iostream>
#include <vector>
#include <string>// 构建 next 数组
void computeNext(const std::string& pattern, std::vector<int>& next) {int m = pattern.length();int len = 0;int i = 1;next[0] = 0;while (i < m) {if (pattern[i] == pattern[len]) {len++;next[i] = len;i++;} else {if (len != 0) {len = next[len - 1];} else {next[i] = 0;i++;}}}
}// KMP 算法
std::vector<int> kmpSearch(const std::string& text, const std::string& pattern) {int n = text.length();int m = pattern.length();std::vector<int> next(m);std::vector<int> result;computeNext(pattern, next);int i = 0; // 文本串的索引int j = 0; // 模式串的索引while (i < n) {if (pattern[j] == text[i]) {j++;i++;}if (j == m) {result.push_back(i - j);j = next[j - 1];} else if (i < n && pattern[j] != text[i]) {if (j != 0) {j = next[j - 1];} else {i++;}}}return result;
}int main() {std::string text = "aaaaaaa";std::string pattern = "aaa";std::vector<int> positions = kmpSearch(text, pattern);if (positions.empty()) {std::cout << "未找到匹配的子串。" << std::endl;} else {std::cout << "匹配的起始下标为: ";for (int pos : positions) {std::cout << pos << " ";}std::cout << std::endl;}return 0;
}    

输出结果:

http://www.dtcms.com/a/444625.html

相关文章:

  • dede替换网站模板wordpress jenn 主题
  • 网站建设 顺德网站建设流程百科
  • 做手机网站要多少钱网页制作员是做什么的
  • 网站建设 名词解释杭州专业网站建设在哪里
  • 自己做网站最新视频教程优秀网页设计618
  • 成都网站制作系统上海网校排名
  • 传诚信网站建设站长工具查询域名信息
  • 官方网站建设哪家公司好营销型网站设计论文
  • 商丘住房和城乡建设厅网站代做网站修改维护
  • 用什么做网站方便长春网络推广公司小技巧
  • 鼓楼网站开发精准资料网
  • 做一个公司网站要多少钱山东省商务厅网站开发区管理处
  • psd数据网站网站建设维护要加班吗
  • 如何查网站注册信息中国4a广告公司100强
  • 网站备案应该怎么做南阳网站排名优化报价
  • 史上最全设计网站今天最新军事新闻视频
  • 南通专业网站建设模板做网站
  • 太原市住房和城乡建设部网站论坛型网站怎么做的
  • 国外做任务网站免费申请论坛网站
  • 比较好的海报设计网站免费建立个人网站的哪些平台好
  • 网站做编辑器设计方案怎么写格式
  • 如何建立简单网站推广方式都有哪些
  • 长春 网站建设小厂建网站
  • 动画视频模板网站网上创建公司
  • 城乡与建设部网站做网站营销公司排名
  • 淄博张店外贸建站公司什么网站可以接单做设计
  • 建设小说网站首页wordpress文章表单
  • 做网站的详细教程汕头网站推广教程
  • 张家港手机网站制作站长申论
  • 做商城网站用什么框架数据分析网站开发