- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 算法思想如下:首先将s1与t1进行比较,若不同,就将s2与t1进行比较,...,直到s的某一个字符si和t1相同,再将它们之后的字符进行比较,若也相同,则如此继续往下比较,当s的某一个字符si与t的字符tj不同时,则s返回到本趟开始字符的下一个字符,即si-j+2,t返回到t1,继续开始下一趟的比较,重复上述过程。若t中的字符全部比完,则说明本趟匹配成功,本趟的起始位置是i-j+1或i-t[0],否则,匹配失败。 设主串s="acabaabaabcacaabc",模式t="abaabcac",匹配过程如图所示。 * * 下面分析它的时间复杂度,设串s长度为n,串t长度为m。 匹配成功的情况下,考虑两种极端情况: 在最好情况下每趟不成功的匹配都发生在第一对字符比较时: 例如:s=”aaaaaaaaaabc”,t=”bc” 设匹配成功发生在si处,则字符比较次数在前面i-1趟匹配中共比较了i-1次,第i趟成功的匹配共比较了m次,所以总共比较了i-1+m次,所有匹配成功的可能共有n-m+1种,设从si开始与t串匹配成功的概率为pi,等概率情况下pi=1/(n-m+1),因此最好情况下平均比较的次数是: 即最好情况下的时间复杂度是O(n+m)。 * 最坏情况下,每趟不成功的匹配都发生在t的最后一个字符。 设匹配成功发生在si处,则在前面i-1趟匹配中共比较了(i-1)*m次,第i趟成功的匹配共比较了m次,所以总共比较了i*m次,因此最坏情况下平均比较的次数是: 即最坏情况下的时间复杂度是O(n*m)。 * 1. 数组的逻辑结构 数组是我们熟悉的一种数据结构。数组作为一种数据结构其特点是结构中的元素本身可以是具有某种结构的数据,但属于同一数据类型,比如:一维数组可以看作一个线性表,二维数组可以看作“数据元素是一维数组”的一维数组,三维数组可以看作“数据元素是二维数组”的一维数组,依此类推,所以可以看作是线性表的推广。 3.7.2 数组 * 2 数组的内存映象 通常,数组在内存被映象为向量,这是因为内存的地址空间是一维的,数组的行列固定后,通过一个映象函数,则可根据数组元素的下标得到它的存储地址。 对于一维数组按下标顺序分配即可。 对多维数组分配时,要把它的元素映象存储在一维存储器中,一般有两种存储方式:一是以行为主序;一种是以列为主序。 * 以行为主序的分配规律是:最右边的下标先变化,即最右下标从小到大,循环一遍后,右边第二个下标再变,…,从右向左,最后是左下标。 以列为主序分配的规律恰好相反:最左边的下标先变化,即最左下标从小到大,循环一遍后,左边第二个下标再变,…,从左向右,最后是右下标。 * 设二维数组Amn,按元素的下标求其地址的计算: 以“以行为主序”的分配为例:设数组的基址为LOC(a11),每个数组元素占据l个地址单元,那么aij 的物理地址可用一线性寻址函数计算: LOC(aij) = LOC(a11) + ( (i-1)*n + j-1 ) * l 在C语言中,数组中每一维的下界定义为0,则: LOC(aij) = LOC(a00) + ( i*n + j ) * l 推广到一般的二维数组:A[c1..d1] [c2..d2],则aij的物理地址计算函数为: LOC(aij)=LOC(a c1 c2)+( (i- c1) *( d2 - c2 + 1)+ (j- c2) )*l * 同理对于三维数组Amnp,即m×n×p数组,对于数组元素aijk其物理地址为: LOC(aijk)=LOC(a111)+( ( i-1) *n*p+ (j-1)*p +k-1)*l 推广到一般的三维数组:A[c1..d1] [c2..d2] [c3..d3],则aijk的物理地址为: LOC(i,j)=LOC(a c1 c2 c3)+( (i- c1) *( d2 - c2 + 1)* (d3- c3 + 1)+ (j- c2) *( d3- c3 + 1)+(k- c3))*l * 三维数组的逻辑结构和以行为主序的分配示意图如图所示。 * 例3-12 若矩阵Am×n 中存在某个元素aij满足:aij是第i行中最小值且是第j列中的最大值,则称该元素为矩阵A的一个鞍点。试编写一个算法,找出A中的所有鞍点。 * * 3.7.3 特殊矩阵 对于一
您可能关注的文档
- 数控机床编程第2版课件作者杜国臣主编第4章节数控车床编程xin.ppt
- 植物组织培养技术课件作者王洪习第一部分植物组织培养概述.ppt
- 智能材料课件作者陈英杰2第二章节.ppt
- 智能材料课件作者陈英杰3第三章节.ppt
- 数控机床编程技术第2版课件作者李海梅第八章节.ppt
- 智能材料课件作者陈英杰4第四章节.ppt
- 智能材料课件作者陈英杰5第五章节.ppt
- 智能材料课件作者陈英杰6第六章节.ppt
- 智能材料课件作者陈英杰7第七章节.ppt
- 数控机床编程技术第2版课件作者李海梅第六章节.ppt
- 数据结构与算法Java版课件作者罗文劼第4章节树结构.ppt
- 数据结构与算法Java版课件作者罗文劼第5章节图结构.ppt
- 数据结构与算法Java版课件作者罗文劼第6章节查找技术.ppt
- 数据结构与算法Java版课件作者罗文劼第8章节扩展应用举例.ppt
- 数据结构与算法第3版课件作者张小莉第1章节绪论.ppt
- 数据结构与算法第3版课件作者张小莉第2章节基本线性结构.ppt
- 数据结构与算法第3版课件作者张小莉第4章节树结构.ppt
- 数据结构与算法第3版课件作者张小莉第6章节查找.ppt
- 数据结构与算法第3版课件作者张小莉第7章节排序.ppt
- 数据结构与算法课件作者张晓莉王苗第4章节字符串及线性结构的扩展.ppt
最近下载
- 第一单元+写话:注意说话的语气(教学课件)-2023-2024学年二年级语文下册单元写话能力提升(统编版).pptx VIP
- 心理健康与心理健康观.ppt VIP
- 关爱保护未成年人.pptx VIP
- 实践党创新理论“三个境界”.doc VIP
- 企业危险化学品及危险化工工艺安全管理规定.docx VIP
- 数电模电完整版练习试题附答案.doc
- 企业设备、建(构)筑物拆除活动污染防治技术指南.pdf VIP
- 2020 电工装备供应商数据采集及接口规范第1部分通用部分.docx VIP
- 《画出你的想象》教学设计4-10画出你的想象-二年级上册美术.docx VIP
- 心理卫生 mental health.ppt VIP
有哪些信誉好的足球投注网站
文档评论(0)