Python 3.x 确定性有限自动机设计

Python 3.x 确定性有限自动机设计,python-3.x,c++11,finite-automata,dfa,automata-theory,Python 3.x,C++11,Finite Automata,Dfa,Automata Theory,有人能告诉我这个算法吗 DFSM的模拟:设计并实现一个程序来模拟DFSM。此程序必须接受两个参数并输出“是/否”。第一个参数是文件名(包含DFSM规范的文件名),第二个参数是字符串。这两个参数都必须是命令行参数。如果DFSM接受字符串,则程序的输出为“是”,否则为“否”。文件中给出的DFSM规范的结构如下: 文件的第一行包含由一个或多个空格分隔的输入字母表。每个字母表应为单个字符 过渡函数以表格形式给出。字母表列表的顺序将与转换表列的顺序相同 文件的最后一行包含由一个或多个空格分隔的最终状态集

有人能告诉我这个算法吗

DFSM的模拟:设计并实现一个程序来模拟DFSM。此程序必须接受两个参数并输出“是/否”。第一个参数是文件名(包含DFSM规范的文件名),第二个参数是字符串。这两个参数都必须是命令行参数。如果DFSM接受字符串,则程序的输出为“是”,否则为“否”。文件中给出的DFSM规范的结构如下:

文件的第一行包含由一个或多个空格分隔的输入字母表。每个字母表应为单个字符

过渡函数以表格形式给出。字母表列表的顺序将与转换表列的顺序相同

文件的最后一行包含由一个或多个空格分隔的最终状态集

转换函数在文件的第一行和最后一行之间给出

转换表的每一行都是一行。行的元素由一个或多个空格分隔。假设文件中至少有三行,第二行对应于状态1索引的转换表的第一行。行索引从文件的第二行开始是隐式的。表中的列按字母表在第一行中的顺序进行索引。状态由从1开始的整数表示,1是开始状态

转换表的行位于文件的第一行和最后一行之间,每行一行


阿霍、霍普克罗夫特和乌尔曼的《龙之书》中有一章是关于状态机处理的。这是一个好的开始,请尝试一下。看见