第二章 
P-36-6 
(1)L(G)是 0~9 组成的数字串; 
(2)最左推导: 
          N⇒ND⇒NDD⇒NDDD⇒DDDD⇒0DDD⇒01DD⇒012D⇒0127 
          N⇒ND⇒DD⇒3D⇒34 
          N⇒ND⇒NDD⇒DDD⇒5DD⇒56D⇒568 
         最右推导: 
          N⇒ND⇒N7⇒ND7⇒N27⇒ND27⇒N127⇒D127⇒0127 
          N⇒ND⇒N4⇒D4⇒34 
          N⇒ND⇒N8⇒ND8⇒N68⇒D68⇒568 
P-36-7 
G(S):(没有考虑正负符号问题) 
S→P|AP 
P→1|3|5|7|9 
A→AD|N 
N→2|4|6|8|P 
D→0|N 
或者:(1)S→ABC|C 
           A→1|2|3|4|5|6|7|8|9 
           B→BA|B0|ε 
                   C→1|3|5|7|9 
P-36-8 
G(E):E→T|E+T|E-T 
        T→F|T*F|T/F 
        F→(E)|i 
最左推导: 
E⇒E+T⇒T+T⇒F+T⇒i+T⇒i+T*F⇒i+F*F⇒i+i*F⇒i+i*i 
E⇒T⇒T*F⇒F*F⇒i*F⇒i*(E)⇒i*(E+T)⇒i*(T+T)⇒i*(F+T)⇒i*(i+T)⇒i*(i+F)⇒i*(i+i) 
最右推导: 
E⇒E+T⇒E+T*F⇒E+T*i⇒E+F*i⇒E+i*i⇒T+i*i⇒F+i*i⇒i+i*i 
E⇒T⇒T*F⇒T*(E)⇒T*(E+T)⇒T*(E+F)⇒T*(E+i)⇒T*(T+i)⇒T*(F+i)⇒T*(i+i) 
⇒F*(i+i)⇒i*(i+i) 
 
1
课后答案网 www.khdaw.com
T
* 
F 
i 
E
+
T
F 
i 
i+i*i 
S
i
S
e
i
S
i
S
i
E
T
F 
i 
E 
- 
E 
- 
T
F 
i 
i-i-i 
S 
i 
S 
T
F 
i 
 
i 
e 
S 
i 
S
i
语法树: 
E 
+ 
T 
F 
i 
E 
+ 
i+i+i 
E 
T 
F 
i 
T 
F 
i 
E
T
F 
i 
P-36-9 
句子:iiiei 有两个语法树: 
S⇒iSeS⇒iSei⇒iiSei⇒iiiei 
S⇒iS⇒iiSeS⇒iiSei⇒iiiei 
因此 iiiei 是二义性句子,因此 
该文法是二义性的。 
 
 
P-36-10 
S→TS|T   
T→(S)|() 
 
P-36-11 
L1: G(S):  S→AC 
           A→aAb|ab 
           C→cC|ε 
L2: G(S):  S→AB 
           A→aA|ε 
           B→bBc|bc 
L3: G(S):  S→AB 
           A→aAb|ε 
           B→aAb|ε 
L4: G(S):  S→1S0|A 
           A→0A1|ε 
或者:S→A|B  A→0A1|ε  B→1B0|A 
 
2
课后答案网 www.khdaw.com
(1) 
X 
X 
 1(0|1)*101
1 
1 
 Y
ε 
0 
2 
1 
确定化: 
 
{X} 
Φ 
{1,2,3} 
{2,3} 
{2,3,4} 
{2,3,5} 
{2,3,4,Y} 
第三章 
ε
1 
0
4
3
1 
5
Y  
 
1 
{1,2,3} 
Φ 
{2,3,4} 
{2,3,4} 
{2,3,4} 
{2,3,4,Y} 
{2,3,4} 
0 
Φ 
Φ 
{2,3} 
{2,3} 
{2,3,5} 
{2,3} 
{2,3,5} 
0 
1 
2 
1 
1 
1 
0 
0
0 
0 
3 
1
4 
1 
0 
0 
1 
0 
5
1 
6
 
最小化:{0,1,2,3,4,5},{6} 
{0,1,2,3,4,5}0={1,3,5}          {0,1,2,3,4,5}1={1,2,4,6} 
{0,1,2,3,4},{5},{6} 
{0,1,2,3,4}0={1,3,5} 
{0,1,2,3},{4},{5},{6} 
{0,1,2,3}0={1,3}            {0,1,2,3}1={1,2,4} 
{0,1},{2,3},{4},{5},{6} 
{0,1}0={1}      {0,1}1={1,2}          {2,3}0={3}      {2,3}1={4} 
{0},{1},{2,3},{4},{5},{6} 
 
 
3
课后答案网 www.khdaw.com
0 
2 
1
3 
0 
0 
0 
0
0 
1 
1 
1 
1 
(0|1)*01 
1 
0 
4
1 
5
 
(1|2|3|4|5|6|7|8|9)(0|1|2|3|4|5|6|7|8|9)*(0|5)|(0|5) 
0*1(0|10*1)* | 1*0(1|01*0)*
P64-8 
(1) 
(2) 
(3) 
P84-12 
(a) 
a 
0 
确定化: 
a,b 
a 
1 
 
 
{0} 
{0,1} 
{1} 
Φ 
给状态编号: 
 
 
0 
1 
2 
3 
a 
{0,1} 
{0,1} 
{0} 
Φ 
a 
1 
1 
0 
3 
b 
{1} 
{1} 
Φ 
Φ 
B 
2 
2 
3 
3 
 
4
课后答案网 www.khdaw.com
a 
1 
 
b 
b 
0 
a 
a
b 
2 
最小化: 
{0,1}      {2,3} 
{0,1}a={1},{0,1}b={2} 
{2,3}a={0,3},{2,3}={3} 
{0,1},{2},{3} 
b
3 
a
 
a 
0
b 
a 
b
1
a 
2
b
 
(b) 
已经确定化,只需最小化: 
{0,1},{2,3,4,5} 
{0,1}a = {1}          {0,1}b = {2,4} 
{2,3,4,5}a = {1,3,0,5}      {2,3,4,5}b = {2,3,4,5} 
又:{2,4}a = {1,0}      {2,4}b = {3,5}    {3,5}a={3,5}        {3,5}b = {2,4} 
分划为:{0,1},{2,4},{3,5} 
{0,1}a = {1}                {0,1}b = {2,4} 
{2,4}a = {1,0}          {2,4}b = {3,5} 
{3,5}a = {3,5}          {3,5}b = {2,4} 
所以不能再分 
a 
0
b 
a 
1
b
b
a 
2
 
 
 
 
5
课后答案网 www.khdaw.com
P64-14 
正规式:(0|10)*   
0 
0
1 
0 
还可以: 
ε 
X
1 
1
0
1
2
 
0
ε
然后再确定化,最小化,结果应该一样。 
P65-15 
首先构造 NFA: 
1 
1 
S 
0 
0 
A 
1 
0 
B 
0
C
1
0
1
1
0
则有:G(f)  f→A1|B0|C1|C0 
             C→C0|C1|A1|B0 
             A→S1|1 
             B→S0|0 
             S→S0|S1|
或者是确定化,然后最小化: 
0|1 
S
0 
1 
A
1 
0 
B
0 
1 
G(C)       C→C0|C1|A0|B1 
             A→0|B0 
             B→1|A1 
0,1 
C
 
Y
f
 
 
 
6
课后答案网 www.khdaw.com
人、狼、羊、白菜: 
{{M、W、G、C},{}}表示在左岸,{{},{M、W、G、C}}在右岸,将可能存在的状态中去掉不安全
状态,剩下: 
{}},{{},{M、W、G、C}},{{M、W、G},{C}},{{M、W、C},{G}}, 
{{M、W、G、C},
{{M、G、C},{W}}  ,{{C},{M、W、G}}  ,{{G},{M、W、C}},{{W},{M、G、C}}, 
{{M、G},{W、C}}  ,{{W,C},{M、G}} 
箭弧上的标记符::表示人单独过河、:表示人和羊过河、:表示人和狼过河、:
{ M、C、G },{{ W }} 
 
 
{C},{{M、W、G}}
{{M、W、G、C},{}}
 
 
 
{{W,C},{M、G}}
{{M、W、C},{G}}  {{G},{M、W、C}}
{W},{{M、G、C}}
 
 
{{W、M、G},{ C}} 
{ M、G},{{ W、 C}}
 
{{},{M、W、G、C}
 
 
7
课后答案网 www.khdaw.com
P81-1 
(1)  按照 T,S 的顺序消除左递归 
第四章 
G'(S):S→a|⋀|(T) 
T→ST' 
T'→,ST'|ε 
递归下降子程序: 
procedure S: 
begin  
if sym = ‘a’or sym= ‘⋀’ 
   then advance 
else if sym=‘(’ 
  then begin 
    advance;T; 
   if sym = ‘)’ then advance; 
    else error; 
end 
else error 
end 
 
procedure T; 
begin 
   S;T' 
End 
 
Procedure T'; 
Begin  
  If sym = ‘,’  
     Then begin  
       Advance; 
       S;T' 
End  
End  
其中:sysm 为输入串指针所指的符号;advance 是把输入指针调至下一输入符号。 
(2)  求 First 和 Follow 集合: 
First(S)={a 、 ⋀  、(}    First(T)={a 、 ⋀  、(}   First(T')={, 、ε} 
Follow(S)={ , 、) 、 #}   Follow(T) = { ) }          Follow(T')={ ) } 
a 
⋀ 
( 
S→a 
S→⋀ 
T→ST' 
T→ST' 
 
 
S→(T) 
T→ST' 
 
) 
 
 
, 
 
 
# 
 
 
T'→ε 
T'→,ST'   
 
S 
T 
T' 
 
 
8
课后答案网 www.khdaw.com