社区
数据结构与算法
帖子详情
如何用适当的数据结构表述状态图?
Jafee
2005-04-30 12:45:44
最好是能表述扩展状态图。
每个节点可能有多个出转移。
请问下,用什么样的数据结构能比较好的描述状态图。
...全文
176
8
打赏
收藏
如何用适当的数据结构表述状态图?
最好是能表述扩展状态图。 每个节点可能有多个出转移。 请问下,用什么样的数据结构能比较好的描述状态图。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
trackant
2005-08-05
打赏
举报
回复
并没有要求输入是简单变量阿,只要是一个符号即可,广义上的符号可能是一个数字或者字符串或多个参数,总之只要你能唯一的识别该“符号”就可以根据当前状态和转移函数确定新的状态。
sky911911
2005-08-05
打赏
举报
回复
用顶点和边 我是这么理解的 呵呵!
Jafee
2005-08-05
打赏
举报
回复
谢谢BinaryTreeEx和 trackant(蚁迹寻踪)。
唉,等了这么久,还是要再说说这个东东:
因为我的状态机的输入并不是简单的某个变量,而可能是多个变量参数或是某个事件来造成状态的转移。所以想求能满足这样条件的数据结构。
trackant
2005-05-03
打赏
举报
回复
Jafee你似乎没有明白BinaryTreeEx的描述,BinaryTreeEx说的是用二维矩阵来描述DFA的状态转移,对于一个确定的状态A,遇到一个确定的输入t,则状态转移被唯一确定,比如转移到C。这样每个状态可以有多个出转移、多个入转移,(每个转移中包含若干转移条件的可以看成是多个转移)。
如果你的需求是转移不确定的情况,比如转移到E或F。也就是NFA的实现问题,可以通过增加新的状态从而把NFA转化为DFA,详细的算法可以看编译原理的书或自动机理论的书。
Jafee
2005-05-01
打赏
举报
回复
先谢谢楼上的回复
矩阵应该是只能描述二维的吧
我要描述的是扩展状态机
每个状态可能有多个出转移、多个入转移,每个转移中包含若干转移条件
Jafee
2005-04-30
打赏
举报
回复
是图啊
希望编过相关程序的能给点好的建议
希望能具体点说说
对编程实现能更有利
qrlvls
2005-04-30
打赏
举报
回复
状态机?当然就是图了
图的顺序存储可以按顶点和边分别存储
BinaryTreeEx
2005-04-30
打赏
举报
回复
一般的状态图使用矩阵描述的,你也可以用它作为壮态图的存储结构。
一般的描述是在a状态下出现事件b执行动作c
也就是说用(a,b)唯一决定c,这时a,b就是矩阵的两个下标,c是矩阵指定
单元的内容。
如果(a,b)对应的c比较复杂需要另外一个状态图那么就需要子图了。这时
搂住可以递归的使用上述方法就可以了。
数据结构
---概述
数据结构
概述;物理结构;逻辑结构;时间复杂度;空间复杂度
UML-
状态图
及活动图
UML
状态图
、UML活动图、数据流程图DFD。使用场景及基本绘制(EA)方法..
数据结构
与算法01:绪论【LEARN FROM 李春葆《
数据结构
教程》】
数据结构
中主要讨论结构化数据。数据元素:是数据(集合)中的一个“个体”,它是数据的基本单位。数据项:数据项是用来描述数据元素的,它是数据的最小单位。数据对象:具有相同性质的若干个数据元素的集合,如整数...
六、【
数据结构
】图-邻接矩阵(adjacency matrix)的实现
本文旨采用C++实现图
数据结构
,具体地以邻接矩阵的方式实现图
数据结构
。图结构可以描述一组对象之间的二元关系,例如在城市交通中,联接于各个公交车站之间的道侣,或者在互联网中个网络节点之间的路由都可以很方便...
超硬核十万字!全网最全
数据结构
代码,随便秒杀老师/面试官,我说的
本文代码实现基本按照《
数据结构
》课本目录顺序,外加大量的复杂算法实现,一篇文章足够。能换你一个收藏了吧?
数据结构与算法
33,007
社区成员
35,326
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章