第6789章 业及参考答案.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6789章 业及参考答案

第6章P231: 1、构造产生下列语言的CFG (2) {1n02m1n |n,m≥1} 解:需保证1的个数相等且0的个数为偶数 S?1S1|1A1 A?00A|00 (4)含有相同个数的0和1的所有0、1串 S?0AS|1BS|ε A?1|0AA B?0|1BB 错解1: S?10S|01S|10|01|ε 错解2: S?1S0|0S1|1A0|0A1, A?10|01|ε (推不出0110) 错解3: S?10S|1S0|S10|01S|0S1|S01|ε (推不 讨论: 不能限制0和1必须在同一次推导中都出现 15、构造与下列文法(原题中去e产生式后的文法)等价的CNF S?a|b|aB|aBB|bA|bAA B?aa|aB|Ba|aBa A?bb|bbA 解:第一步 S?a|b|BaB|BaBB|BbA|BbAA B?BaBa|BaB|BBa|BaBBa A?BbBb|BbBbA Ba?a Bb?b 第二步 S?a|b|BaB|BaB1|BbA|BbA1 B?BaBa|BaB|BBa|BaB2 A?BbBb|BbB3 Ba?a Bb?b B1?BB A1?AA B2?BBa B3?BbA 讨论: 这种题需要将步骤写清, 意义在于机械化这种事情是我们的目标, 你不必加入太多自己的智慧. Ba和Ba的区别? 第7章 P257: 1、构造识别下列语言的PDA (2) L = {1n02m1n|n,m≥1} 要求 用七元组表示 用推广的状态转换图表示 解法1:先构造产生该语言的GNF文法,再由文法推导的启示或依定理7-3的构造方法,设计出PDA 构造出产生该语言的?1S1|1B1 B?00B|00 得到对应的GNF: S?1SA|1BA A?1 B?0C|0CB C?0 构造PDA M1=({q},{0,1},{S,A,B,C}, δ1, q, S, Φ) 其中δ1为: δ1(q, 1, S)={(q, SA), (q, BA)} δ1(q, 1, A)={(q, ε) } δ1(q, 0, B)={(q, C), (q, CB)} δ1(q, 0, C)={(q, ε) } 有N(M1)= {1n02m1n|n,m≥1}用推广的状态转换图 N(M1)= L(M1)={1n02m1n|n,m≥1}, 注意: 如果要这样做, 请加适当的说明 解法1:?a中的a用作00 思考: 崔同学实际是想设计接受{1nam1n|n,m≥1}的PDA以简化, 但又没有底气 这种想法很大胆(褒义的"大胆") 也是可行的. 过程是: 先设计PDA接受L={1nam1n|n,m≥1} 这儿(={1,a} 构造代换f: f(1)=1, f(a)=00, 则f(L)就是我们要的(={1,0}上的语言, PDA随之而定 只是未向同学们介绍如何利用代换设计PDA 解法2之一:可以将PDA的工作分为3个阶段: (1)接受1并记载的阶段; (2)接受偶数个0的阶段; (3)匹配1的阶段 设q0为开始状态,q1为接受1并记载的阶段,Z0为初始栈符号 δ2(q0, 1, Z0)={(q1,AZ0)} δ2(q1, 1, A)={(q1,AA)} q1状态下读入0将进入接受0的状态q2 δ2(q1, 0, A)={(q2,BA)} 为了接受偶数个0,可设q3状态用于接受第2个0,这时只要将进入q2状态时压入的B出栈即可, q3状态下读入0的情形同q1状态下读入0时的情形 δ2(q2, 0, B)={(q3, ε)} δ2(q3, 0, A)={(q2,BA)} 在q3状态下读入1且栈顶是A时,进入对1的匹配阶段 δ2(q3, 1, A)={(q4, ε)} q3状态下继续进入1和A的匹配 δ2(q4, 1, A)={(q4, ε)} 正确的匹配应是q3状态下读完所有的符号,且栈中只余Z0 δ2(q4, ε, Z0)={(q5, ε)} 综上,设计的PDA为: M2=({q0, q1, q2, q3, q4, q5},{0,1},{A,B,Z0}, δ2, q0, Z0, {q5}) 有L(M2)=N(M2) = L 用推广的状态转换图δ2(q0, 1, Z0)={(q1,AZ0)} δ2(q1, 1, A)={(q1,AA)} q1状态下读入0将进入接受0的状态q2, 用栈符号B记忆 δ2(q1, 0, A)={(q2,BA)} q2状态读入0且栈顶为B, 这时一定是第偶数个0, B被匹配, B出栈 δ2(q2, 0, B)={( q2, ε)} q2状态读入0且栈顶为A, 这时已经出现过偶数个0, 这个零为第奇数个0, 将B压栈 δ2(q2, 0, A)={(q2,BA)} 在q2状态下读入1且栈顶是

文档评论(0)

epjk332 + 关注
文档贡献者

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

1亿VIP精品文档

相关文档