现成的, 讲义:

https://www.cnblogs.com/AndyEvans/p/10240790.html

https://www.cnblogs.com/AndyEvans/p/10241031.html

一个例子, 写得非常好. 一下子就全明白了, 尤其是像我这种没有听过编译原理课程的人.

https://blog.csdn.net/tyler_download/article/details/53139240

上一节提到过,当处于某个指定状态时,如果该状态有ε边,那么,不需要吸收任何字符,就可以从该状态转换到ε边所指向的状态。

一开始,状态机处于起始状态12,

在状态12,通过ε边可直达状态2,6,

在状态2,可以通过ε边,直达状态0,3. 也就是说,当处于状态12时,通过ε边的连接,可以同时抵达状态的集合是 {12,2,6,0,3}。

通过一个状态,推算出它能同时抵达的状态集合,这个状态集合称作ε闭包集合,这种运算称之为ε闭包运算
ε-closure(12) = {12, 2, 6, 0, 3}.

接下来读入字符1,我们从闭包集合中看看,哪个状态节点有能够吸收数字的转换边。从上图观察,我们发现,

状态6和0,拥有吸收数字字符的转换边。

状态6吸收一个数字字符后,跳转到状态7,

状态0吸收字符1后,跳转到状态1,

这样我们可以说,状态集合{12, 2, 6, 0, 3} 在吸收字符1后,跳转到集合{1,7},

后面这个集合{1,7},我们称为转移集合(move set), 我们把这种跳转运算标记如下:
move({12, 2, 6, 0, 3}, D} = {1, 7}.

非常好!!!

---------------------
作者:tyler_download
来源:CSDN
原文:https://blog.csdn.net/tyler_download/article/details/53139240
版权声明:本文为博主原创文章,转载请附上博文链接!

转载于:https://www.cnblogs.com/tekikesyo/p/10892380.html

编译原理--NFA/DFA相关推荐

  1. 编译原理---NFA转化为DFA---DFA最小化(自己看)

    算法描述: 伪代码: function E(s){return NFA中状态s经过空转移到达的状态集合: }function Ee(T){return NFA中状态集合T中的每个状态通过空转移到达的状 ...

  2. 编译原理: Subset Construction 子集构造法(幂集构造)(NFA转DFA)

    编译原理: Subset Construction 子集构造法(幂集构造)(NFA转DFA) 文章目录 编译原理: Subset Construction 子集构造法(幂集构造)(NFA转DFA) 简 ...

  3. 【编译原理】NFA转DFA(子集构造法)

    前文回顾 [编译原理]正则表达式转NFA 算法 来自龙书第二版 C++实现 #include<iostream> #include<string> #include<cs ...

  4. 【C++实现】编译原理 免考小队 NFA转换为等价的DFA

    背景 期末考试免考,冲! 实验名称 对任意给定的NFA M进行确定化操作 实验时间 2020年5月21日 到 2020年5月24日 院系 信息科学与工程学院 组员姓名 Chocolate.kry202 ...

  5. 【编译原理核心知识点总结】第三章、正则文法、NFA、DFA

    阅读规范: 本文以重点为主,零碎知识点/相对不够重要的为辅助阅读内容,以脚注形式给出,点击脚注即可快速跳转. 助解题目通常是为了帮助理解给出的题目,考试不考,若已理解可直接跳过. 文中提到的课本是陈火 ...

  6. 【编译原理笔记03】词法分析:正则表达式、有穷自动机(FA)、DFA与NFA及RE的相互转换、DFA识别单词、语法检测

    本次笔记内容: 3-1 正则表达式 3-2 正则定义 3-3 有穷自动机 3-4 有穷自动机的分类 3-5 从正则表达式到有穷自动机 3-6 从NFA到DFA的转换 3-7 识别单词的DFA 文章目录 ...

  7. 正则表达式引擎的构建——基于编译原理DFA(龙书第三章)——1 概述

    说明:本系列文章介绍的算法均来自编译原理(龙书)一书,如果读者对代码没有兴趣,只想了解算法思路,完全可以阅读龙书相关章节内容,比我讲得清晰透彻. 序: 啃编译原理半年以来,任然徘徊在前4章,其间反反复 ...

  8. [编译原理随记]正则表达式转为NFA状态图(Thompsion构造法)

    上级文章 [编译原理随记]正则表达式记号和状态图:https://blog.csdn.net/qq_28033719/article/details/107067798 [编译原理随记]NFA转DFA ...

  9. 编译原理: 最小化 DFA(划分) 验证 DFA(Kleene 闭包)

    编译原理: 最小化 DFA(划分) & 验证 DFA(Kleene 闭包) 文章目录 编译原理: 最小化 DFA(划分) & 验证 DFA(Kleene 闭包) 简介 参考 正文 示例 ...

最新文章

  1. 它是谁?一个比 c3p0 快200倍的数据库连接池!
  2. 微信小程序实战之百思不得姐精简版
  3. python计算结果传给spark_将Python函数作为对象传递给Spark
  4. InvokeWebServiceActivity
  5. python max函数_使用'key'和lambda表达式的python max函数
  6. c语言阶乘分解成素因子,阶乘的素因子分解 51nod 1189
  7. 计算机考试单元格,计算机等级考试技巧在Excel中如何对单元格进行设置?
  8. 【其他】编程技巧之常用缩写
  9. 【Flink】Flink on yarn 支持指定 application id 吗? yarn.application.id
  10. 【Janino】Janino介绍
  11. 鼎捷ERP易飞9.0.8实战课程-卓致羽-专题视频课程
  12. 高中数学关于计算机的知识,高中数学必修三-算法概念基础知识解读
  13. 云计算风起云涌,IaaS 步入黄金发展期
  14. uni-app 跳转至手机浏览器
  15. 触屏计算机显示器CDU,科技:关于电脑显示器你所需要知道的
  16. 项目OA之资源结构图
  17. python处理Excel表格--读取Excel表格
  18. 如何用arcgis分析点到点的距离
  19. c语言移位函数intrins,单片机C语言实现NOP 循环移位
  20. Python旅途休憩——闭包

热门文章

  1. 什么是 操作系统 自举?
  2. RHEL 6.2安装vnc
  3. cnn卷积神经网络应用_卷积神经网络(CNN):应用的核心概念
  4. Waveform Audio 驱动(Wavedev2)之:WAV 驱动解析
  5. qt开发环境 - 丁林松教程,丑陋的计算器
  6. 程序解析excel中的图片_产品日志丨支持导入Excel中的图片amp;批量修改后期实体字段...
  7. 操作系统锁的实现方法有哪几种_「从入门到放弃-Java」并发编程-锁-synchronized...
  8. linux mint图标大小,Cinnamon:LinuxMint 15桌面设置小技巧
  9. 挖掘机燃料_2020广东挖掘机工程机械出租公司合作共赢
  10. mysql对所有列的数据进行修改6_MySQL的SQL语句 - 数据定义语句(6)- ALTER TABLE 语句 (3)...