读书人

二叉树中结点最大距离的有关问题

发布时间: 2013-01-28 11:49:56 作者: rapoo

二叉树中结点最大距离的问题
求二叉树中结点最大距离的时候,写了这个代码,但是会少算一个单位长,怎么修改??有没有人能来解答一下,万分感谢!!!先谢谢各位的帮助....

typedef struct _BtNode
{
ElemType data;
struct _BtNode *leftchild;
struct _BtNode *rightchild;
}BTNode, *BTree;


void FindMaxlen(BTree t)
{
if(t == NULL)
{
return;
}
if(t->leftchild != NULL)
{
FindMaxlen1(t->leftchild);
}
if(t->rightchild != NULL)
{
FindMaxlen1(t->rightchild);
}
if(t->leftchild != NULL || t->rightchild != NULL) nMaxLen++;
}
A
[解决办法]
B是包括AB同时为真,A真B假,A假B真三类的,楼主的分类就不对
if(t->leftchild != NULL) 是包括if(t->leftchild != NULL
[解决办法]
t->rightchild != NULL) 的,分类分细点考虑把
[解决办法]
求二叉树中结点最大距离的时候?
一对距离最大的点?

你的代码应是算内部结点(非叶子结点)个数吧,怎么一个FindMaxlen1一个FindMaxlen?

建议发到“数据结构区”,那里应有很多人乐意给你解答.


读书人网 >C语言

热点推荐