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

家庭网站建设90自己做网站

家庭网站建设,90自己做网站,做玻璃的网站,有用dojo做的网站吗1.KMP算法本质上就是对朴素匹配算法(BF)的一个优化#xff0c;减少朴素匹配算法中不必要匹配的次数#xff0c;核心代码和朴素匹配算法差不多#xff0c;BF是移动字串逐个字符匹配#xff0c;每次模式串(子串)匹配只移动一个字符单位#xff0c;而KMP算法是每次模式串匹配…1.KMP算法本质上就是对朴素匹配算法(BF)的一个优化减少朴素匹配算法中不必要匹配的次数核心代码和朴素匹配算法差不多BF是移动字串逐个字符匹配每次模式串(子串)匹配只移动一个字符单位而KMP算法是每次模式串匹配移动j-next个字符单位next存放在next[]数组里j为匹配失败的那个字符位置。 2.为什么KMP算法可以减少不必要的匹配次数? 利用了之前已经匹配过的字符前缀信息比如下图:(第一行为主串,第二行为模式串) 可以看到在第七个位置匹配失败,只需要满足主串a字符前面从右边开始从左往右数的字符串 等于 模式串c字符前面从左边开始从左往右数的字符串。其最大字符个数就为next的值这里就是next[j]4,接着将模式串移动到模式串j4(也就是jnext[j])的位置。如下图: 从两图可以看到模式串移动了2个单位而不是像BF那样每次移动一个单位。 注意: 模式串移动的过程中i是不会变的。字符匹配的下标可以从1开始也可以从零开始。 接下来就是确定next数组的值(next数组计算方法是KMP精华的部分)能够确保每次模式串移动的单位。 考试时的做法 以前准备数据结构考试计算next[]的时候只要计算模式串从字符前从右边开始从左往右数 等于 模式串字符前面从左边开始从左往右数 的最大字符个数(不包括模式串本身)。 具体计算过程:将模式串的前缀都抽出来,如下图。 为什么只需要利用模式串 因为 主串和模式串匹配失败时匹配失败字符的前缀内容是一样的所以之前的主串a字符前面从右边开始从左往右数的字符串 等于 模式串c字符前面从左边开始从左往右数的字符串可以替换为模式串c字符前面从右边开始从左往右数的字符串 等于 模式串c字符前面从左边开始从左往右数的字符串 编程的方法求next。 说白了就是模式串自己与自己匹配比较其开头和结尾即可得到最大 相同字符的个数 即可下标建议都从1开始且next[1]0因为模式串本身并不算所以下图直接从第二个元素开始比。目的是求next[i[的值举例流程如下图 参考文章:KMP
http://www.zqtcl.cn/news/224193/

相关文章:

  • 深圳做手机网站设计wordpress禁用wp-cron
  • 如何自己建公司网站搜索引擎排名2020
  • 济南建站商业网站开发入门选课
  • 济南网络免费推广网站四川建设厅官方网站查询
  • 中国建设银行网站首页wordpress安装多个
  • 中国住建厅网站官网怎么建立网站快捷方式
  • 天津协会网站建设怎么用dw做带登陆的网站
  • 南宁做网站服务商苏州网站建设品牌
  • 做平台销售网站上海市普陀区建设规划局网站
  • 网站的积分系统怎么做电影在线观看
  • 成都网站建设方案服务旅游网站建设报价单
  • 京东网址seo排名查询工具
  • 南京制作网站速成班外贸营销信模板
  • 简单网站建设规划方案物联网网站设计
  • 做360网站官网还是百度四川平台网站建设方案
  • 做网站的主题有哪些精品课程网站建设情况
  • 帝国网站开发电商平台搭建
  • 建设工程网站tcwordpress 标题入库
  • 网站开发简直广州网站制作后缀
  • 上海短视频seo优化网站wordpress 构建知识库
  • 做的网站图片不显示2018做网站赚钱不
  • 国内建站平台网站建设是什么科目
  • 响应式个人网站psd建设银行网站联系电话
  • 大型网站开发实战品牌网站建设费用要多少
  • 昆山网站建设昆山html5制作手机端页面
  • 做网站的国标有哪些达州网络推广
  • 站内seo和站外seo区别wordpress演示数据
  • 建设旅游网站财务分析创意设计公司网站
  • 张家港网站优化wordpress调用图片上传
  • 做网站要商标吗房产网站 设计方案