【发布时间】:2017-04-23 19:19:07
【问题描述】:
标题说明了一切。我需要一些想法。 nfa 输入看起来像这样,并且没有 epsilon 移动。
1 2
0 a 2
1 b 3
等等,这意味着 1 和 2 是最终状态,而使用 'a' 我可以从状态 0 到状态 2。
我用
struct nod
{
int ns;
char c;
};
vector<nod> v[100];
保存数据,其中 v[i] 是包含从状态 i 出发的所有路径的向量。 当有多个状态时,我需要知道如何命名新状态,例如
0 a 1
0 a 2
0 a 3
因为我无法创建状态 123 或类似的东西。 我如何检查一个多重集是否已经转换为一个状态?
【问题讨论】:
标签: c++ c++11 finite-automata automata-theory