[问题] 不是BFS 也不是DFS 那这有什么名字吗?

楼主: StarTouching (抚星)   2014-09-18 21:54:44
一个Tree的结构
找出合乎条件的第一个Node
虚拟码如下
Node* Find (Node* cur, bool (*comp)(Node*))
{
if (cur == NULL)
return NULL;
for each child of cur
{
if (comp(child))
return child;
}
for each child of cur
{
return Find (child, comp);
}
}
有点类似 first child next sibling 结构的 search
这样的算法有名字吗?
对无特别规则的tree来说有什么明显缺点吗?
作者: CindyLinz (Cindy Wang)   2014-09-18 22:08:00
我还是把它叫 DFS.. XD要用循环配 stack 实作 DFS 的时候, 有时我会写成这种
作者: azureblaze (AzureBlaze)   2014-09-18 22:10:00
这和前面插if(comp(cur))return cur;一样啊没事 不太一样
作者: carylorrk (carylorrk)   2014-09-19 00:45:00
我也觉得本质上还是 DFS
作者: mabinogi805 (焚离)   2014-09-19 00:54:00
觉得本质还是DFS +1
作者: cismjmgoshr (--???--)   2014-09-19 02:33:00
Pre-order traversal的一般版本?
作者: LPH66 (-6.2598534e+18f)   2014-09-19 04:52:00
不太像, 硬要说的话是 preorder 顺序然后每个点看子节点

Links booklink

Contact Us: admin [ a t ] ucptt.com