0
我试图做一个n元树搜索的功能,但它不能很好地工作,它会在2级后返回错误的节点。任何人都知道为什么?n元树搜索功能
这里是节点实现
而且还有一个功能
node *search(node *p, char* name, int year)
{
int i, n;
if(p == NULL)
return (NULL);
if((!strcmp(p->name, name) && (p->year == year))
return (p);
n = number(p); \\returns number of childs
for(i = 0; i < n; i++)
if(search(p->p[i], name, year))
return (p->p[i]);
}
如果for'loop'search'确实返回'return',会发生什么?你没有处理这种情况。另外,什么是'ptr'用于,因为它没有在代码中提到? – Sean
你是什么意思如果得到返回? ptr是指向父节点的指针,我需要它用于其他功能。 – tripleq