| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 436 人关注过本帖
标题:高手帮我完成一个程序好么 上机要用
取消只看楼主 加入收藏
crazy001
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-4-4
收藏
 问题点数:0 回复次数:3 
高手帮我完成一个程序好么 上机要用
哪位高手能帮我完成一个程序,要求:输入一批数据,以999为结束,建立一棵二叉排序树,通过遍历
输出递增排序结果。用TURBO C编写 用到的函数我写出来,至于怎么组合起来我就不会了(大部分其实是MAIN还数不会写)
也不知道我给的函数全不全,哪位高手能帮我完成这个程序,并能运行。 谢谢高手
函数(采用自数据结构书上,如果大家有更好的算法也可)附下:
2007-04-09 21:38
crazy001
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-4-4
收藏
得分:0 
回复:(crazy001)高手帮我完成一个程序好么 上机要用...
1.二叉树的二叉链表结构
typedef struct node
{
int key;
struct node *lchild;
struct node *rchild;
}bstnode,*bsttree;
2.二叉排序树的插入:
void insertbst(bstree *bst,int key)
{
bstree s;
if(*bst==NULL)
{
s=(bstree)malloc(sizeof(bstnode));
s->key=key;
s->lchild=NULL; s->rchild=NULL;
*bst=s;
}
else if(key<(*bst)->key)
insertbst(&((*bst)->lchild),key);
else if(key>(*bst)->key)
insertbst(&((*nst)->rchild),key);
}
3.创建二叉排序树
void creatbst(bstree *bst)
{
ine key;
*bst=NULL;
scanf ("%d",&key);
while(key!=999)
{
insertbst(bst,key);
scanf ("%d",&key);
}
}
4.至于遍历的算法应该是中序吧?
void inprder(bstreee root)
{
if(root!=NULL)
{
inorder(root->lchild);
printf ("%d",root->data);
inorder(root->rchild);
}
}
2007-04-09 21:39
crazy001
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-4-4
收藏
得分:0 

就是用上面的大概这些函数 组成一个程序 完成上述功能

2007-04-09 21:40
crazy001
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-4-4
收藏
得分:0 
哪位高手能帮我做一下啊  急用啊
2007-04-11 17:29
快速回复:高手帮我完成一个程序好么 上机要用
数据加载中...
 
   



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

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