免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 8724 | 回复: 12
打印 上一主题 下一主题

[算法] [求教] 什么是有限状态自动机 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-02-27 17:48 |只看该作者 |倒序浏览
看了很多资料,都搞不懂这是个什么东西,有什么用,谁能用简单一些的言语描述一下。千万别用算法导论里面的词汇。

论坛徽章:
4
水瓶座
日期:2013-09-06 12:27:30摩羯座
日期:2013-09-28 14:07:46处女座
日期:2013-10-24 14:25:01酉鸡
日期:2014-04-07 11:54:15
2 [报告]
发表于 2013-02-27 17:52 |只看该作者
不懂, 只做过AC自动机的题目, 是否算有限.

论坛徽章:
0
3 [报告]
发表于 2013-02-27 17:56 |只看该作者
人做出来的东西,都是有限。说说无妨

论坛徽章:
0
4 [报告]
发表于 2013-02-27 18:27 |只看该作者
它是一种模型,代表一种计算模式,就是那种用有限个状态就能表达的计算。

你能理解“状态”和“无限状态”吗?绝大部分的计算都是无限状态的。

论坛徽章:
0
5 [报告]
发表于 2013-02-27 18:32 |只看该作者
把问题的求解过程划分成离散的“状态”,并用一个有向图建立状态(结点)的迁移关系。
实现一个程序单位,在给定初始状态后,能够根据输入信息实现状态间的迁移,并可以在有限步骤后迁移到预定的“终态”。
在迁移的过程中,问题得到解决。

论坛徽章:
0
6 [报告]
发表于 2013-02-27 18:33 |只看该作者
无限状态,通常说有很多状态,很难一一列明。

有限状态机在语法解析中应用,我理解的是:
通常输入的一个队列的token, 输出的是一个抽象语法树。
要么就说:语法错误,就退出了。

论坛徽章:
0
7 [报告]
发表于 2013-02-27 18:36 |只看该作者
JohnBull 发表于 2013-02-27 18:32
把问题的求解过程划分成离散的“状态”,并用一个有向图建立状态(结点)的迁移关系。
实现一个程序单位, ...

您的抽象思维能力比我高几个数量级,我实在无法理解这么抽象的言语。

论坛徽章:
89
水瓶座
日期:2014-04-01 08:53:31天蝎座
日期:2014-04-01 08:53:53天秤座
日期:2014-04-01 08:54:02射手座
日期:2014-04-01 08:54:15子鼠
日期:2014-04-01 08:55:35辰龙
日期:2014-04-01 08:56:36未羊
日期:2014-04-01 08:56:27戌狗
日期:2014-04-01 08:56:13亥猪
日期:2014-04-01 08:56:02亥猪
日期:2014-04-08 08:38:58程序设计版块每日发帖之星
日期:2016-01-05 06:20:00程序设计版块每日发帖之星
日期:2016-01-07 06:20:00
8 [报告]
发表于 2013-02-27 19:28 |只看该作者
JohnBull 发表于 2013-02-27 18:32
把问题的求解过程划分成离散的“状态”,并用一个有向图建立状态(结点)的迁移关系。
实现一个程序单位, ...


描述的很好。

论坛徽章:
89
水瓶座
日期:2014-04-01 08:53:31天蝎座
日期:2014-04-01 08:53:53天秤座
日期:2014-04-01 08:54:02射手座
日期:2014-04-01 08:54:15子鼠
日期:2014-04-01 08:55:35辰龙
日期:2014-04-01 08:56:36未羊
日期:2014-04-01 08:56:27戌狗
日期:2014-04-01 08:56:13亥猪
日期:2014-04-01 08:56:02亥猪
日期:2014-04-08 08:38:58程序设计版块每日发帖之星
日期:2016-01-05 06:20:00程序设计版块每日发帖之星
日期:2016-01-07 06:20:00
9 [报告]
发表于 2013-02-27 19:29 |只看该作者
Perlvim 发表于 2013-02-27 17:48
看了很多资料,都搞不懂这是个什么东西,有什么用,谁能用简单一些的言语描述一下。千万别用算法导论里面的 ...


你去看看英文的Wiki。

论坛徽章:
0
10 [报告]
发表于 2013-02-27 20:09 |只看该作者
Perlvim 发表于 2013-02-27 18:33
无限状态,通常说有很多状态,很难一一列明。

有限状态机在语法解析中应用,我理解的是:


错了,有限状态机用于词法分析,判断词性用的。字典中词条的数目是有限的,所有单词的长度也是有限的,所以可以用有限状态表示。语言可是无限的,你怎么用有限状态表示?

这里的状态有两种:一种是狭义状态,就是定义模型时说的状态,就是一个编号;另一个是广义状态,当把模型看作一个抽象机时,这个抽象机在每个时刻的数据快照构成这个时刻的状态。

有限状态机的狭义状态和广义状态指的是同一个东西,因为有限状态机只存储一个数据:就是当前的那个狭义状态(状态编号)。

下推自动机的狭义状态和有限状态机一样,也是有限的,但是它可不止存储一个状态,它有一个状态堆栈,这个堆栈是无限的!它的数据快照有无限多种可能,所以它的广义状态是无限的。

图灵机的狭义状态是图灵机指令的位置。图灵机程序一定是有限长的,所以图灵机的狭义状态也是有限的。但是图灵机不光存储当前的狭义状态,它还有一条(或多条)纸带,虽然每个格子上的字母数目是有限的,但是纸带的长度是无限的,所以图灵机的广义状态也是无限的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP