1

私はトライとそれを変更するいくつかの関数を持っています。

typedef struct node *pnode;

typedef struct node
{
    int element;
    pnode next;//same level, other element
    pnode subtree;//next level
} node;

ここで、関数をデバッグおよび/またはテストするために、試行を出力する必要があります。

再帰的に試してみましたが、第 2 レベルよりも第 1 レベルを取得できません...

それを行う良い方法は何ですか?

4

1 に答える 1

2

スタックを使用する (または繰り返しでエミュレートする) 代わりに、キューを使用する必要があります。

http://en.wikipedia.org/wiki/Breadth-first_search

于 2009-04-01T09:05:57.667 に答える