构建代表给定语言的有限状态机时,需要考虑哪些主要问题?我知道有限状态机将字符串作为输入,并且当读取字符串的每个元素时,机器状态会发生变化,直到达到EOF。如果一旦完全读取了字符串,则机器处于接受字符串的最终状态之一。我不明白的是在构建FSA时需要考虑的因素(除了它应该接受的字符串,以及每个转换函数的定义。)
答案 0 :(得分:0)
您要考虑的一件事是州的数量。有许多等效方法来定义机器,但通常优先选择较少的状态,因为以较低的复杂性和空间实现了相同的结果。
计算自动机的表示需要与状态数成比例的空间,因此optimizing通过状态减少的空间复杂度是可取的或必要的。