编译原理-正规文法和有穷自动机的等价性(文法→自动机)

前言

  • 正规文法与有穷自动机的等价:若正规文法G、有穷自动机M,满足L(M) = L(G),就认为两者是等价的

正规文法转有穷自动机方法

  • 正规文法G和有穷自动机M表示如下:
    微信公众号:JavaWeb架构师

  • G与M的对应关系

    • 1) 状态集合 Q = VN ∪ Z
    • 2) 字母表 ∑ = VT
    • 3) 初态 q0 = S
    • 4) P与f的转换规则
a)  A → aB  ==>  f(A,a) = B
b)  Aa  ==>  f(A,a) = Z
  • 5) 画状态转换图
    微信公众号:JavaWeb架构师

例题

  • 已知G[S]:
S  →  aA
S  →  bB
S  →  ε
A  →  aB
A  →  bA
B  →  aS
B  →  bA
B  →  ε

解:
1) Q = {S,A,B,Z}
2) ∑ = {a,b}
3) q0 = S
4) P与f的转换关系

f(S,a) = A
f(S,b) = B
f(S,ε) = Z
f(A,a) = B
f(A,b) = A
f(B,a) = S
f(B,b) = A
f(B,ε) = Z

5) 画状态转换图
微信公众号:JavaWeb架构师

说明

  • 转换得到的是NFA,有必要的时候需要转换成DFA,DFA最简化

其它

课件下载:

关注下方微信公众号,
回复:
正规文法转有穷自动机.code

完整教程PDF版本下载

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值