天天看點

請問編譯原理中a(a|b)*a和aa*b*a有什麼差別,謝謝。 http://zhidao.baidu.com/question/550242926.html 請問編譯原理中a(a|b)*a和aa*b*a有什麼差別,謝謝。

http://zhidao.baidu.com/question/550242926.html

請問編譯原理中a(a|b)*a和aa*b*a有什麼差別,謝謝。

2013-05-14 10:15 weryk11  |  分類:穿越火線  |  浏覽104次 分享到: 2013-05-14 18:13 天天愛答題,20元話費等你拿~ 提問者采納

涉及到一個優先序問題,前一個正則式接受兩個a之間有0長度或任意長度的{a,b}字元串序列,而後一個正則式則隻允許兩個a之間有的{a,b}序列必須滿足:如果a、b同時存在,則a必須在b前面,也就是隻接受左右兩端全是a,隻有中間是b這種夾心餅幹的形式。舉個栗子你就明白了:
a(a|b)*a可以接受的輸入序列有:aa aaa aba abba aaba abaa
aa*b*a 可以接受的輸入序列有:aa aaa aaba aba aaabba 不能接受abaa      
提問者評價
非常感謝,這個問題困擾我很長時間了。      

繼續閱讀