状态机最适合解决什么样的编程问题?
我读过有关使用状态机实现的解析器的信息,但想找出需要作为状态机实现的问题。
最简单的答案可能是它们几乎适用于任何问题。不要忘记计算机本身也是一个状态机。
不管怎样,状态机通常用于解决存在一些输入流的问题,并且在给定时刻需要完成的活动取决于该点在该流中看到的最后一个元素。
此输入流的示例:解析时的某些文本文件、正则表达式的字符串、事件等player entered room
用于游戏AI等
活动示例:准备好读出一个数字(在另一个数字后面跟着一个数字)+
出现在计算器解析器的输入中),转身(在玩家接近然后打喷嚏之后),执行跳跃踢(在玩家按下左,左,右,上,上之后)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)