| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1119 人关注过本帖
标题:[求助]求二叉树根结点到指定结点路径(急啊)
只看楼主 加入收藏
我啥都不会啊
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-7-12
收藏
 问题点数:0 回复次数:1 
[求助]求二叉树根结点到指定结点路径(急啊)

我找了个~这个错误比较多~哪位能帮我改改~~或者直接给个没错的啊~谢谢各位大虾
#include <stdlib.h>
#define Null 0

struct tree
{
int data;
struct tree *left;
struct tree *right;
};

typedef struct tree treenode;
typedef treenode *btree;

btree insert_btree(btree root,int node)
{
btree new,current,parent;
new=(btree)malloc(sizeof(treenode));
new->data=node;
new->left=Null;
new->right=Null;
if(root==Null)
{
return new;
}
else
{
current=root;
while(current!=Null)
{
parent=current;
if(new->data<current->data)
{
current=current->left;
}
else
{
current=current->right;
}
}
if(new->data<parent->data)
{
parent->left=new;
}
else
{
parent->right=new;
}
return root;
}
}

btree create_btree(int *nodlist,int len)
{
btree root=Null;
int i;
for(i=0;i<len;i++)
{
root=insert_btree(root,nodlist[i]);
}
return root;
}

btree search_btree(btree root,int findnode,int top)
{
btree p1,p2,pointer;
pointer=root;
if(pointer==Null)
{
return Null;
}
else
{
if(pointer->data==findnode)
{
printf("%d<-",pointer->data);
return pointer;
}
else
{
p1=search_btree(root->left,findnode,top);
p2=search_btree(root->right,findnode,top);
if(root->data!=top)
{
if(p1!=Null||p2!=Null)
{
printf("%d<-",root->data);
}
}
else if((p1!=Null|p2!=Null)&&root->data==top)
{
printf("%d",top);
}
if(p1!=Null)
{
return p1;
}
if(p2!=Null)
{
return p2;
}
return Null;
}
}
}

main()
{
int i,index,top;
int nodlist[16]={6,3,1,9,5,7,4,8};
btree root,pointer;
index=8;
root=create_btree(nodlist,index);
top=root->data;
pointer=search_btree(root,8,top);
printf("\n");
getch();
}

搜索更多相关主题的帖子: 结点 树根 btree 路径 new 
2006-07-12 18:13
菜鸟上路
Rank: 4
等 级:贵宾
威 望:14
帖 子:1120
专家分:0
注 册:2006-3-21
收藏
得分:0 
btree search_btree(btree root,int findnode,int top)
中怎么没循环啊?

2006-07-16 17:19
快速回复:[求助]求二叉树根结点到指定结点路径(急啊)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022001 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved