谁能给我解释一下这两个函数,详细一点,第二个函数传参数那里看得有点头疼
voidVisit(charitem){printf("%c",item);}voidPreOrder(BiTreeNode*T,voidVisit(charitem))...
void Visit(char item)
{
printf("%c",item);
}
void PreOrder(BiTreeNode *T,void Visit(char item))
{
if(T!=NULL)
{
Visit(T->data);
PreOrder(T->LeftChild,Visit);
PreOrder(T->RightChild,Visit);
}
} 展开
{
printf("%c",item);
}
void PreOrder(BiTreeNode *T,void Visit(char item))
{
if(T!=NULL)
{
Visit(T->data);
PreOrder(T->LeftChild,Visit);
PreOrder(T->RightChild,Visit);
}
} 展开
2个回答
展开全部
二叉树的遍历。
遍历二叉树就是按特定的顺序打印出节点的值。
visit什么的,都是为了方便描述。
你就这样理解吧。
void PreOrder(BiTreeNode *T)
{
if(T!=NULL)
{
printf("%d",T->data);
PreOrder(T->LeftChild,Visit);
PreOrder(T->RightChild,Visit);
}
}
遍历二叉树就是按特定的顺序打印出节点的值。
visit什么的,都是为了方便描述。
你就这样理解吧。
void PreOrder(BiTreeNode *T)
{
if(T!=NULL)
{
printf("%d",T->data);
PreOrder(T->LeftChild,Visit);
PreOrder(T->RightChild,Visit);
}
}
更多追问追答
追问
不能这样改吧,改了之后里面的嵌套调用函数本身的时候传了两个参数,而定义的时候只有一个参数,会报错吧
追答
void PreOrder(BiTreeNode *T)
{
if(T!=NULL)
{
printf("%d",T->data);
PreOrder(T->LeftChild);
PreOrder(T->RightChild);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询