日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第三章 - 有穷自动机与词法分析(二)

發布時間:2024/3/12 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第三章 - 有穷自动机与词法分析(二) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

3.2 有窮自動機

自動機一方面是單詞的描述工具,另一方面可以比較容易構造出識別器程序。

有窮自動機FA分為(非確定有窮自動機NFA)和(確定有窮自動機DFA)

3.2.1 確定有窮自動機

包含以下五部分:

【1】符號集∑(輸入符號集)

【2】狀態集合SS = {S0,S1,S2,S3,...,Sn}

【3】開始狀態S0

【4】終止(接受)狀態集: {S0,S1,S2,S3,...,Sn}

【5】狀態轉換器

?

自動機定義方式主要包括(圖形法)、(轉換表法)和(函數法)

【函數法】下面是一個有窮自動機,接受所有以‘a’開頭并由‘a’、0、1符號組成的符號串(可以沒有0、1部分)

【1】符號集∑={0、1、‘a’}

【2】狀態集合SS = {S0,S1}

【3】開始狀態S0

【4】終止(接受)狀態集: {S1}

【5】狀態轉換函數。。。。。

表格法

圖形法

被動機接受 及一些特殊例子

?

3.2.2 確定有窮自動機的實現

有窮自動機用于構造詞法分析器Scanner。下面考慮DFA的實現,一種是(面向狀態轉換表)的方法,一種是(面向狀態轉換圖)的方法。

?

3.2.3 非確定有窮自動機

區別主要有三點:

①一個狀態的不同輸出邊可標有相同的符號

②允許有多個開始狀態

③允許有ε邊

?

3.2.4 NFA到DFA的轉換

轉化時把ε邊刪除

ε-閉包】如圖:

轉化原理:DFA的狀態被表示為NFA的狀態之集? --用SS(狀態集)的形式表示DFA

3.2.5 確定有窮自動機的極小化

【DFA化簡】減少狀態個數到最少

狀態等價】稱有窮自動機兩個狀態等價,當且僅當他們從他們到接受狀態產生的符號串集相同。

【狀態集劃分】

【初始劃分】

【異類狀態】

【分裂】

3.2.6 自動機狀態轉換表的實現

詞法分析器

詞法分析器是使用頻度很高的程序段,提高其速度是非常重要的事情。

對應的實現方法:全查法(節省空間速度慢),不查法即索引法(占用空間大但是速度慢),半查法(折中)

?

轉載于:https://www.cnblogs.com/yangf428/p/10128302.html

總結

以上是生活随笔為你收集整理的第三章 - 有穷自动机与词法分析(二)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。