我在编写二叉树中的广度优先搜索代码。我已将所有数据存储在队列中,但我无法弄清楚如何前往所有节点并使用其所有子节点。在二叉树中的BFS
这里是我的代码在C:
void breadthFirstSearch (btree *bt, queue **q) {
if (bt != NULL) {
//store the data to queue if there is
if (bt->left != NULL) enqueue (q, bt->left->data);
if (bt->right != NULL) enqueue (q, bt->right->data);
//recursive
if (bt->left != NULL) breadthFirstSearch (bt->left, q);
if (bt->right != NULL) breadthFirstSearch (bt->right, q);
}
}
我已经排队根数据,但它仍然没有工作。 任何人都可以指出我的错误吗?
究竟发生了什么问题? – Joe 2011-05-17 02:40:17