为一堂课做作业,我想到了这个问题:
对于以下每个正则表达式,请给出不在表达式定义的语言中的最小长度字符串。
(bb)*(aa)*b*
a*(bab)*∪b∪ab
我将尝试只在第一个上获得帮助,看看我是否能弄清楚第二个。这是我所知道的:Kleene * 表示 0 个或多个可能的元素。集合的并集是包含集合 a 和集合 b 的所有元素而不重复元素的集合。从插入 lambda 开始解决第一个问题,我得到:
第一次运行:bbaab
第二次:bbbbaabaabbaabbbbaab
第三次:bbbbbbaabaabbaabbbbaabaabbbbaabaabbaabbbbaabbbbbbaabaabbaabbbbaab
如果我做得正确,那么长度为 0 到 5 的字符串不在该语言中。我这样做正确吗?