有限自動機

2021-08-29 20:25:32 字數 1145 閱讀 5257

我們在學習有限自動機之前,我們可以先簡單了解一下,有限狀態機(fsm)。

學習軟考,大家應該對編譯器和直譯器都不陌生,其實編譯器就是用fsm做詞法分析(這些詞是不是很熟悉),那麼什麼是狀態呢?什麼優勢狀態機呢?

我們學習的時候,不想學了,就說自己沒有狀態,其實轉態在我們生活中,轉態隨處可見,計算機也是。

所謂有限狀態機,就是乙個集合很多種狀態的機器,它會有使用者不同的輸入產生不通狀態轉變,通過這些狀態的轉變來體現出每次使用者操作的特殊性。狀態的產生以及改變都是由某種條件成立而出現的。

理解了這個對下邊的有限自動機學習會有幫助!

有限自動機(又稱為:有窮自動機,時序機)

乙個有限自動機m由五元組(x,y,s,δ,λ)

x,y是s的非空有限集

x:輸入集

y:輸出集

s:轉台集合

λ:是s×x到y的單值對映,稱為m的輸出函式

有限自動機=內部狀態集+控制規則組成

有限自動機識別字串:

一次輸入字串中的字元,判斷其是否能使用有限自動機從初態開始到終狀態結束,如果能,則可以被識別。

狀態轉換成圖:

我們剛學過資料結構導論,對於圖應該不陌生。

狀態轉換圖是乙個有向圖,每乙個節點表示乙個狀態,雙圈節點表示的是終態,每一轉態轉換都對應圖的乙個有限弧。

它可以分為確定的有限自動機(dfa)和不確定的有限自動機(nfa)。

他們之間有什麼區別:

dfa:開始狀態是唯一

乙個輸入對應乙個狀態轉換

nfa:開始狀態是乙個狀態集合

乙個輸入對應多個狀態轉換(狀態集)

有向弧的標記上可以為空

具體轉換過程,這裡

有限自動機轉正規式:

如上圖,就是用符號表示狀態轉換之間的關係,從而 消除了中間節點

正規式轉有限自動機:

就是上邊操作的逆過程:

有限狀態自動機

有限自動機是更一般化的狀態轉化圖。分為確定有限自動機 dfa 和不確定有限自動機 nfa m s,f,so,z 其中 下圖為乙個確定的有限狀態自動機 m s,f,so,z 其中 下圖為乙個不確定的有限狀態自動機 說了半天其實它們的本質區別就在於s0,確定的有限狀態自動機的s0是唯一確定的。而不確定的...

有限狀態自動機

有限自動機是更一般化的狀態轉化圖。分為確定有限自動機 dfa 和不確定有限自動機 nfa m s,f,so,z 其中 下圖為乙個確定的有限狀態自動機 m s,f,so,z 其中 下圖為乙個不確定的有限狀態自動機 說了半天其實它們的本質區別就在於s0,確定的有限狀態自動機的s0是唯一確定的。而不確定的...

有限狀態自動機

背景提要 星期三的時候,xw交給我乙個點燈的任務 大意是乙個玩意單擊的時候如何如何,長按又如何如何,雙擊又如何如何,幾種狀態分別執行不同的操作。這就導致了一種情況 在機器第一次檢測到按鈕被按下時,我們無法做出論斷 我們不知道這是一次雙擊還是長按還是單擊,我們只能靜觀其變,見機行事。但是按鈕被按下時,...