【发布时间】:2010-04-17 09:53:10
【问题描述】:
我正在解决一个问题(来自 Hopcroft、Motwani 和 Ullman 的自动机理论、语言和计算机简介)编写一个正则表达式,该表达式定义一种由所有 @987654321 字符串组成的语言@s 和1s 不包含子字符串011。
答案(0+1)* - 011 正确吗?如果不是,那么正确的答案应该是什么?
【问题讨论】:
-
如果你在一个小时后就放弃了,我建议你更努力地搜索一下。
-
我没有给你答案,但试试这个:绘制一个接受 011 作为输入然后否定它的有限状态机(图)(所有接受状态都是不接受,不接受是接受)。您应该能够从那里解决正则表达式,因为它也是一个有限状态机。
-
同样的技巧也适用,绘制一个接受任何包含 011 的字符串的有限状态机(图)...
标签: regex compiler-construction grammar automata