說我有由下面的轉移圖表示的兩個確定性有限狀態自動機:如何合併兩個有限狀態自動機?
FSA關鍵字IF: IF
___ ___ _
/ \ I / \ F // \\
>| 0 |----->| 1 |----->||2||
\___/ \___/ \\_//
FSA用於ID: [AZ] [A-Z0 -9] *
------------
___ | _ LET |
/ \ LET // \\<------
>| 0 |----->||1||
\___/ \\_//<------
| NUM |
------------
我可以用什麼算法來他們有三個最終狀態合併成一個單一的確定性有限狀態自動機,代表由下面的轉移圖不滿:
-----------------------
| LETTER BUT F OR NUM | --------
___ | _ _ LET v _ | LET |
/ \ I // \\ F // \\----->// \\<------
>| 0 |----->||1||----->||2|| ||3||<--------
\___/ \\_// \\_//----->\\_//<------ |
| NUM | NUM | |
| ANY LETTER OTHER THAN I ------------ |
---------------------------------------------
1: ID
2: IF (IT'S ALSO AN ID, BUT THE KEYWORD IF HAS A HIGHER PRECEDENCE)
3: ID
狀態2和3之間的'NUM'轉換來自組合機器的哪個部分?否則,它看起來像要連接機器並從狀態0添加故障轉換。 –
忘記添加這些匆忙。 –
您是否手動繪製了這些ascii藝術作品或者您使用過工具?非常整潔的方式。 – Loax