我有这种语言:

{an bm | m+n is an even number}



什么是正确的语法?

请您参考如下方法:

S -> aaS | aB | bbC | ε 
B -> bbB | b 
C -> bbC | ε 

你看,它是一种常规语言。 'S' 代表“我们已经构建了偶数个 a 并且可能会有更多的 a”,'B' 代表“我们已经构建了奇数个 a,现在接下来是奇数个 b。 'C' 代表“我们已经构建了偶数个 a,现在接下来是偶数个 b。

ε 代表“”,空字符串


评论关闭
IT干货网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!