深度第一次向左或向右绘制

时间:2014-12-14 21:43:58

标签: depth-first-search

我应该从F节点开始画一个deapth第一棵树。该树基于下面的矩阵。当kode"访问"时,该树被提取出来。工作原理如下:

  void visit (int k) // DFS, adjaceny matrix
    {
    int t;
    val [k] = ++id;
    for (t = l; t<= V; t++)
    if (a[k][t] ! = 0)
    if (val[t]== unseen) visit (t);
    }

                        | A  B  C  D  E  F  G  H  I
                      --|--------------------------
                      A | 1  1  0  0  1  1  0  1  0
                      B | 1  1  1  0  0  1  1  0  0
                      C | 0  1  1  0  1  0  0  0  0
                      D | 0  0  0  1  0  0  0  1  0
                      E | 1  0  1  0  1  0  0  1  1
                      F | 1  1  0  0  0  1  1  0  0
                      G | 0  1  0  0  0  1  1  0  0
                      H | 1  0  0  1  1  0  0  1  0
                      I | 0  0  0  0  1  0  0  0  1

问题的答案是:

                     ......F......
                     : :   :\    :
                     : :   : A   :
                     : :   :/ \  :
                     : :   H   E :
                     : :  /:    \:
                     : : D :     B
                     : :/  :
                     : G...:
                     :/
                     C

但我的问题是:在F节点的左侧或右侧放置A的决定是什么?我可以正确地绘制这棵树,但左边是我出错的地方,关于将A放在左边是什么决定的任何意见,E到E左边的左边B等等?

0 个答案:

没有答案