- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二个字符串长度为1。-算法设计与分析.ppt
题目1.2 还原暗号讲解 学号:160327023 姓名:邱彦彬 题目描述及分析 算法思路 程序设计 复杂度描述 ★问题描述 G 和 H 是好朋友,他们两人常常在一起用特殊的暗号来进行交流,他们两人共同制定了 q 个规则,比如用’ab’表示’c’。(他们的规则固定是用长度为 2 的字母来表示长度为 1 的字母) 当 H 从 G 那里收到一串文字 s 时,如果 s 的开头两个字母满足他们之间的其中一个规 则,则这两个字母可以被规则中的单个字母代替。 现在 H 想要给 G 一个长度为 n 的暗号,希望表达出 a 的意思。在已知所有规则的情况, 他想知道总共有多少种不同的表达方案。(对于一段暗号,被替换之后,可以继续套入规则 进行替换,直到文字变为单个字母 a 时,则为一种可行的方案) 题目描述及分析 ★数据输入 输入的第一行是两个整数 n 和 q (2?≤?n?≤?6, 1?≤?q?≤?36),表示暗号的长度和 H 和 G 之间 达成的规则数目。 接下来有 q 行,每一行包含两个字符串。第一个字符串长度为 2,第二个字符串长度为 1。表示第一个字符串可以表达第二个字符串的意思。 题目描述及分析 ★数据输出 输出一个整数,表示共有多少种长度为 n 的暗号可以最终表达出 a 的意思。 题目描述及分析 ★题目分析 1、暗号总共长度为N; 题目描述及分析 ★题目分析 2、规则上每次都只由2个字母变成1个字母;(不能多字母,不能少字母) 3、规则上每次都是从当前暗号的第1、2个字母进行变换;(不能从中间取两个字母) 题目描述及分析 ★题目分析 4、仅能从暗号表中提供的规则进行替换字母; 5、最终从N个长度暗号变成1个字母。 题目描述及分析 算法思路 根据以上的分析题目提取的信息: 需要用逆向思维的方式,应该从后往前推到暗号。这样不需要考虑前面到底是什么暗号排序,并且只需要遍历所有情况,即可。 算法思路 这里如果每一个方式做穷举,则会使得时间复杂度很大,所以必须对其做裁剪,进行分支限界法: 1、判断条件既是只要当前所需要找到的暗号结果字母对应于的暗号头部字母是下一次的需要找的暗号结果,这样,能够砍掉大部分不需要的遍历 2、如果这个循环没有到所需要的暗号长度数量就没法找到对应的暗号结果,也直接删除这层遍历。 算法思路 算法具体思路: 1、定义及初始化所有参数; 2、if(暗号长度n) 1)for遍历所有结果,找到结果对应规则的暗号头; 2)找到字母对应规则暗号头个字母,作为下一次的输入,并让暗号长度+1; 3)如果迟迟循环没有找到暗号对应字母,则直接终止本次再次递归,返回; 3、if(暗号长度=n) 则让计数可得到暗号组合数量+1,并返回; 4、输出暗号组合数量。 运用递归函数来做主体的思路: 程序设计 因为要用递归可以用全局变量来减少传参: 程序设计 用动态分配空间来减少内存空间使用: 时间复杂度: 因为每次都是q个数据,n次的递归,所以时间复杂度是O(),但是因为分枝限界法减少很多不必要的递归则实际规模小的多。 空间复杂度: 辅助空间复杂度都是确定常数,则空间负责度为O(1)。 复杂度描述 讲解结束 谢谢聆听
您可能关注的文档
- 第三章VHDL基本结构.ppt
- 第三章VisualBasic程序设计基础.ppt.ppt
- 第三章交易与借贷法则.ppt
- 第三章储存管理.ppt
- 第三章国际货物运输(3课时).doc
- 第三章影像媒体.ppt
- 第三章技术规范.doc
- 第三章拉伸与压缩时材料的力学性质§3-1材料力学性质的实验研究§3-2.ppt
- 第三章栈和队列-DSQCW.doc
- 第三章栈和队列-tabspresso.ppt
- 2023-2024学年广东省深圳市龙岗区高二(上)期末物理试卷(含答案).pdf
- 2023-2024学年贵州省贵阳市普通中学高一(下)期末物理试卷(含答案).pdf
- 21.《大自然的声音》课件(共45张PPT).pptx
- 2023年江西省吉安市吉安县小升初数学试卷(含答案).pdf
- 2024-2025学年广东省清远市九校联考高一(上)期中物理试卷(含答案).pdf
- 广东省珠海市六校联考2024-2025学年高二上学期11月期中考试语文试题.pdf
- 2024-2025学年语文六年级上册第4单元-单元素养测试(含答案).pdf
- 2024-2025学年重庆八中高三(上)月考物理试卷(10月份)(含答案).pdf
- 安徽省安庆市潜山市北片学校联考2024-2025学年七年级上学期期中生物学试题(含答案).pdf
- 贵州省部分校2024-2025学年九年级上学期期中联考数学试题(含答案).pdf
文档评论(0)