1.正規式轉換到正規文法spa
對任意正規式R選擇一個非終結符Z生成規則Z→Rblog
1.對形如A→ab的規則,轉換成A→aB,B→btable
2.將形如A→a|b的規則,轉換成A→a,A→b(A→a|b)im
3.將形如A→a*b的規則,轉換成A→aA,A→bimg
將形如A→ba*的規則,轉換成A→Aa,A→btab
不斷利用上述規則進行轉換,直到每條規則最多含有一個終結符爲止.語言
1(0|1)*101co
Z → A1background
A → B0生成
B → C1
C → (0 | 1)C | ε
C → 0C | 1C | ε
(a|b)*(aa|bb)(a|b)*
Z → (a | b)Z
Z → Z(a | b)
Z → aa | bb
Z → Za | Zb | aZ | bZ | aA | bB
A → a
B → b
((0|1)*|(11))*
Z → ( (0 | 1)* | (11) )Z | ε
Z → (0|1)*Z | 11Z | ε
Z → (0 | 1)*Z
Z → (0 | 1)Z | Z
Z → 1A
A → 1Z
Z → ε | 0Z | 1Z | 11Z
(0|110)
Z → 0 | A
A → 1B
B → 1C
C → 0
2. 自動機M=({q0,q1,q2,q3},{0,1},f,q0,{q3})
其中f:
(q0,0)=q1
(q1,0)=q2
(q2,0)=q3
(q0,1)=q0
(q1,1)=q0
(q2,1)=q0
(q3,0)=q3
(q3,1)=q3
畫現狀態轉換矩陣和狀態轉換圖,識別的是什麼語言。
狀態轉換矩陣:
0 | 1 | |
q0 | q1 | q0 |
q1 | q2 | q0 |
q2 | q3 | q0 |
q3 | q3 | q3 |
狀態轉換圖:
語言:((1*01)*01)*0(0|1)*
3.由正規式R 構造 自動機NFA
(a|b)*abb
(a|b)*(aa|bb)(a|b)*
1(1010*|1(010)*1)*0