当前位置:首页 » 操作系统 » nfa算法

nfa算法

发布时间: 2025-05-05 21:11:40

Ⅰ 如何将正则表达式转换为NFA

正则表达式转换NFA算法

基础的正则表达式:


Ⅱ !!编译原理DFA和NFA

DFA或NFA是对计算机程序的行为的抽象模型。你编写的程序其实就对应了一个自动机。简单举例来说,如果a,b可以取值0或1; 程序: if(a==1) b=1; 这个程序对应了一个自动机。
对应的自动机就有状态 (0,0), (0,1), (1,1), (1, 0)
比如你自动机的初始状态是 (1,0)即a=1,b=0时,运行程序的下一个状态就是(1,1)。

画图出来就是 这4个状态作为顶点,并且有下面几条边
(0,0) --> (0,0)(自环), (1,0)-->(1,1), (1,1)-->(1,1)(自环), (0,1)-->(0,1)自环

存在的意义就是一种理论模型,也可以认为是一种编程思想。 词法分析系也离不开 if else, 这一系列的if else和条件也就组成自动机。。。

最经典体现自动机思想的算法就是KMP算法,你肯定学过,字符串子串匹配的算法。 回忆这个算法的过程:算法第一步构造的next表(数据结构教材的说法)其实就是根据子串的内容构造了一个自动机! 算法第二步将原串作为自动机输入,自动机的输出就是匹配到的子串位置或者无匹配。

热点内容
自建mc国服服务器怎么安装地图 发布:2025-05-06 02:13:18 浏览:919
安卓什么版本能用虚拟相机 发布:2025-05-06 02:12:37 浏览:200
开发linux服务 发布:2025-05-06 02:02:37 浏览:717
存储电量 发布:2025-05-06 01:52:48 浏览:749
安卓云空间如何清理 发布:2025-05-06 01:49:48 浏览:125
常见的算法题 发布:2025-05-06 01:48:57 浏览:333
我的世界创世云服务器 发布:2025-05-06 01:46:03 浏览:572
今日头条上传视频挣钱 发布:2025-05-06 01:45:31 浏览:248
千里传音脚本 发布:2025-05-06 01:32:12 浏览:859
上海ntp服务器ip 发布:2025-05-06 01:25:33 浏览:403