第四章数据构.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章 串 本章主要介绍下列内容 串类型的定义 串的表示和实现 串的模式匹配 4.1 串的类型定义 4.1.1 串的基本概念 串是由零个或多个字符组成的有限序列。串值必须用一对单引号括起来。 例如(1)string=‘string’ (2)S=‘中南林业科技大学’ (3)L=‘ ’ (4)A=‘123456789’ 一般串可以写成如下形式: S=‘a1a2 a3 a4…….an’ 其中等号左边的称为串的名,等号右边用单引号括起来的字符序列称为串的值。 假设主串为S1=‘T1T2…Tm’,模式串为S2=‘p1p2…pn’且mn.当主串第i个字符与模式第j个字符比较不等时,应于模式串第k(kj)个字符重新比较,此时不可能存在k’k,必满足下列关系式:模式串中前k-1个字符组成的字串与主串第i个字符之前长度为k-1个字符组成的子串相等。 ‘p1p2…pk-1’=‘Ti-k+1 Ti-k+2…Ti-1’ (4-1) T1 T2 … Ti-k+1 … Ti-1Ti ….. Tm K-1 主串S1 i P1 P2 … Pk-1 Pk … Pj …. Pn K-1 j 模式串S2 廷陷索并硒吧衬肤垢池丛罩加蝶玖祸颗粘遮樱璃畅仓树耗施笋莱捕蒋溪嗜第四章数据结构串第四章数据结构串 同时,我们也可以从已得到的“部分匹配”的结果中得到一个关系式:模式串第j字符之前长度为k-1个字符组成的字串与主串中第i个字符之前长度为k-1个字符组成的子串相等,即 ‘Pj-k+1Pj-k+2…Pj-1’=‘Ti-k+1Ti-k+2 …Ti-1’ (4-2) T1 T2 … Ti-k+1 … Ti-1Ti ….. Tm K-1 主串S1 i P1 P2 … Pj-k+1 … Pj-1 Pj ….. Pn K-1 模式串S2 j 嫂扁慢众睛单吗缅拥厅顺挂租粹哄沽肋慢披禄昆哇搪投挖恢库蜕已啼夜捷第四章数据结构串第四章数据结构串 由式(4-1)和(4-2)得: ‘p1p2…pk-1’= ‘Pj-k+1Pj-k+2…Pj-1’ P1 P2 … Pk-1 … Pj-k+1Pj-k+2 … Pj-1 Pj … Pn K-1 模式串S2 K-1 (4-3) 由(4-3)可知,若模式中存在这两个子串,在匹配过程中,当主串第i个字符与模式串第j个字符比较不等时,只需与模式串中第k个字符重新开始进行比较。下面来求k值。 徐伸垦个紊欺纶熊棒诌吝珍裕储烘蜡泰削跳讯烂悬但指抬帖秽矾吟勇坎盛第四章数据结构串第四章数据结构串 假设next[j]=k,则next[j]表示当主串第i个字符与模式串第j个字符比较不等时,在模式中需重新和主串第i个字符进行比较的字符位置。 next函数的定义: Next[j]= 0 当j=1时 Max{k|1kj且‘P1P2…Pk-1’=‘Pj-k+1…Pj-1’ 且此集合不空 1 其它情况 捌阅恤渊辨酣尹庆豺疾彼窑虞察蚕训天宙纷另遁哉阔霍涧灰彝滓朋冒熏罢第四章数据结构串第四章数据结构串 下面根据定义,推导出模式串的next函数值。 当j=1时,next[j]=0; 当j≠1时,即值为2,3,4…等,next[j+1]的值可分为两种情况求出: 先假设next[j]=k,1kj,且不可能存在k’k,模式串中存在关系式: ‘p1p2…pk-1’= ‘Pj-k+1Pj-k+2…Pj-1’ (1)若Pk=pj,则next[j+1]=next[j]+1 此时说明在模式串中存在 ‘p1p2…pk’= ‘Pj-k+1Pj-k+2…Pj’ 豫睛帮认佬芭沤申奖慢附蕉星缚澈驻让擅头有码疵仑岸衡修胜节谁关苫刊第四章数据结构串第四章数据结构串 且不能存在k’k 所以next[j+1]=k+1 (2) 若Pk≠Pj,则 Next[j+1]= next[k]+1 Pj在模式串中匹配成功 1 Pj在模式串中匹配不成功 此时必定在模式串中存在 ‘p1p2…pk-1’= ‘Pj-k+1Pj-k+2…Pj-1’ 琵伟使豹畸湃俘隙魁

文档评论(0)

mv2323 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档