xt03答案.docx
《xt03答案.docx》由会员分享,可在线阅读,更多相关《xt03答案.docx(10页珍藏版)》请在冰豆网上搜索。
xt03答案
练习3.1
试题分析
有限自动机分为确定有限自动机和非确定有限自动机。
确定有限自动机的确定性表现在映射δ:
Q×VT-->q是单值函数,也就是说,对任何状态q∈Q和输入字符串a∈VT,δ(q,a)唯一确定下一个状态。
显然,本题给出的是一个确定的有限自动机,它的状态转换图是C中的②。
它所接受的语言可以用正则表达式表示为00(0|1)*,表示的含义为由两个0开始的后跟任意个(包含0个)0或1组成的符号串的集合。
答案
A:
④ B:
③ C:
② D:
② E:
④
练习3.2
答案
(1) T
(2) T (3) F
(4) F (5) T (6)T
练习3.3
答案
(1) 以0开头并且以0结尾的,由0和1组成的符号串。
(2) {α|α∈{0,1}*}
(3) 由0和1组成的符号串,且从右边开始数第3位为0。
(4) 含3个1的由0和1组成的符号串。
{α|α∈{0,1}+,且α中含有3个1}
(5) {α|α∈{0,1}*,α中0和1为偶数}
练习3.4
答案
(1) 令Letter表示除这五个元音外的其它字母。
((letter)*A(letter)*E(letter)*I(letter)*O(letter)*U(letter))*
(2) A*B*....Z*
(3) (0|10*1)*
(4) (0|10*1)*1
(5) [分析]
设S是符合要求的串,|S|=2k+1(k≥0)。
则S→S10|S21,|S1|=2k(k>0),|S2|=2k(k≥0)。
且S1是{0,1}上的串,含有奇数个0和奇数个1。
S2是{0,1}上的串,含有偶数个0和偶数个1。
考虑有一个自动机M1接受S1,那么自动机M1如下:
和L(M1)等价的正规表达式,即S1为:
((00|11)|(01|10)(00|11)*(01|10))*(01|10)(00|11)*
类似的考虑有一个自动机M2接受S2,那么自动机M2如下:
和L(M2)等价的正规表达式,即S2为:
((00|11)|(01|10)(00|11)*(01|10))*
因此,S为:
((00|11)|(01|10)(00|11)*(01|10))*(01|10)(00|11)*0|
((00|11)|(01|10)(00|11)*(01|10))*1
(6)1*|1*0(0|10)*(1|ε)
(7)接受w的自动机如下:
对应的正规表达式:
(1(01*0)1|0)*
练习3.5
答案
先写出渡河的方法,串中对象顺序为人来回渡河时所运的货物的顺序:
①羊空菜羊狼空羊
②羊空狼羊菜空羊
现给出一个NFA:
M=(Σ,Q,0,{9},δ)
其中Σ={羊,空,菜,狼}
Q={0,1,2,3,4,5,6,7,8,9}
转形函数
δ(0,羊)=1, δ(1,空)=2, δ(2,菜)=3, δ(2,狼)=5
δ(3,羊)=4, δ(5,羊)=6, δ(4,狼)=7, δ(6,菜)=7
δ(7,空)=8, δ(8,羊)=9
练习3.6
答案
(a)DFA M=({0,1},{q0,q1,q2},q0,{q2},δ)
其中δ定义如下:
δ(q0,0)=q1 δ(q0,1)=q0
δ(q1,0)=q2 δ(q1,1)=q0
δ(q2,0)=q2 δ(q2,1)=q0
(b)正则表达式:
1*01*01*01*
DFA M=({0,1},{q0,q1,q2,q3},q0,{q3},δ)
其中δ定义如下:
δ(q0,0)=q1 δ(q0,1)=q0
δ(q1,0)=q2 δ(q1,1)=q1
δ(q2,0)=q3 δ(q2,1)=q2
δ(q3,1)=q3
练习3.7
答案
(1) DFA M=({0,1},{q0,q1,q2,q3},q0,{q3},δ)
其中δ定义如下:
δ(q0,0)=q1 δ(q0,1)=q2
δ(q1,0)=q1 δ(q1,1)=q3
δ(q2,0)=q3 δ(q2,1)=q1
(2)DFA M=({0,1},{q0},q0,{q0},δ)
其中δ定义如下:
δ(q0,0)=q0 δ(q0,1)=q0
练习3.8
答案
①先求一个于G等价的NFAM
M=({0,1)},{S,A,B,C,f},S,f,δ)
δ(S,0)={S,B} δ(S,1)={S,A}
δ(A,1)={C,f} δ(B,0)={C,f}
δ(C,0)={C,f} δ(C,1)={C,f}
②再求与M等价的左线性文法G'
G'=({0,1)},{A,B,C,S},S,P)
其中S=f,P为:
S-->A1|B0|C0|C1
A-->1|D1
B-->0|D0
C-->A1|B0|C0|C1
D-->0|1|D0|D1
练习3.9
答案
(a)
处理输入符号串ababbab的过程中的动作序列:
δ(0,ε)=1;
δ(1,ε)=2;δ(2,a)=3;δ(3,ε)=6;δ(6,ε)=1;
δ(1,ε)=4;δ(4,b)=5;δ(5,ε)=6;δ(6,ε)=1;
δ(1,ε)=2;δ(2,a)=3;δ(3,ε)=6;δ(6,ε)=1;
δ(1,ε)=4;δ(4,b)=5;δ(5,ε)=6;δ(6,ε)=1;
δ(1,ε)=4;δ(4,b)=5;δ(5,ε)=6;δ(6,ε)=1;
δ(1,ε)=2;δ(2,a)=3;δ(3,ε)=6;δ(6,ε)=1;
δ(1,ε)=4;δ(4,b)=5;δ(5,ε)=6;δ(6,ε)=7;
(b)
处理输入符号串ababbab的过程中的动作序列从略。
(c)
处理输入符号串ababbab的过程中的动作序列从略。
(d)
处理输入符号串ababbab的过程中的动作序列:
δ(0,ε)=1;δ(1,a)=2;δ(2,ε)=1;δ(1,b)=2
δ(2,ε)=3;δ(3,a)=4;δ(4,b)=5;δ(5,b)=6
δ(6,ε)=7;δ(7,a)=8;δ(8,ε)=7;δ(7,b)=8
δ(8,ε)=9
练习3.10
答案(注:
本题答案的DFAM没有化简)
(1)NFAM图示如下:
处理输入符号串ababbab的过程中的动作序列:
δ(0,a)=1;δ(1,b)=2;δ(2,a)=1;δ(1,b)=2;
δ(2,b)=2;δ(2,a)=1;δ(1,b)=2
(2)NFAM图示如下:
此DFAM与(a)相同,处理输入符号串ababbab的过程中的动作序列同(a)。
(3)NFAM图示如下:
此DFAM与(a)相同,处理输入符号串ababbab的过程中的动作序列同(a)。
(4)NFAM图示如下:
处理输入符号串ababbab的过程中的动作序列:
δ(0,a)=1;δ(1,b)=3;δ(3,a)=1;δ(1,b)=3;
δ(3,b)=4;δ(4,a)=5;δ(5,b)=7
练习3.11
答案
(1),
(2),(3)的DFAM相同,化简结果为:
(4)
练习3.12
答案
根据3.11的结果知这几个正规表达式是等价的。
练习3.13
答案
(a)(a|b)*a(a|b)
①NFAM:
②DFAM:
③化简:
②中的DFAM中没有等价状态,因此为最小化的DFAM。
(b)(a}b)*a(a|b)(a|b)
①NFAM:
②DFAM:
③化简:
②中的DFAM中没有等价状态,因此为最小化的DFAM。
(c)(c|b)*a(a|b)(a|b)(a|b)
①NFAM:
②DFAM: