首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

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

2013-01-28 
二叉树中结点最大距离的问题求二叉树中结点最大距离的时候,写了这个代码,但是会少算一个单位长,怎么修改??

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

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?

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


热点排行