计算树和图以模拟ND Turing Machine

时间:2018-07-25 09:23:24

标签: c algorithm data-structures computation-theory turing-machines

我正在尝试编写C代码来模拟非确定性图灵机。到目前为止,我已经实现了输入磁带和过渡磁带,第一个使用简单的双链表,第二个使用链表。

这个想法是要建立一个像这样的计算树:Computational Tree

每个节点都包含在我的图灵机的配置中:

  1. 当前状态
  2. 输入磁带的内容
  3. 指针在输入磁带中的位置

由于不确定性,我必须检查并递归遍历整个树,这意味着平均要分配大量的内存(每个可能的配置1个节点)。

是否有更好的数据结构来模拟ND Turing Machine?我当时在考虑定向图(这也是您通常在纸上描述图灵机的方式),并使用邻接表来实现它,如下所示:{{3 }}(因为我不知道先验可能的状态数,并且C中的数组不是动态的。)

0 个答案:

没有答案