电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

数据结构实验二 树的应用

数据结构实验二  树的应用_第1页
1/6
数据结构实验二  树的应用_第2页
2/6
数据结构实验二  树的应用_第3页
3/6
数据结构实验二 树得应用(代码&测试界面)//Cosmetics_Info、h#include #include #include typedef struct { //化妆品信息得结构体char brandname[10]; //品牌名 double price; //价格 }datatype;typedef struct node{ //二叉排序树链表得结点结构 datatype data; //结点信息 struct node *lchild, *rchild; //指向左孩子与右孩子得指针} bintnode; typedef bintnode *bintree; //结点指针类型 bintree root; //指向二叉树根结点得指针void InsertBintree(bintree *t, datatype addnode) //创建新结点 {bintree f = NULL, p = *t; //p 指向根结点 while(p) //每次从根结点开始比较,查找插入位置{if ( strcmp(addnode 、brandname,p->data 、brandname)==0&&addnode 、price==p->data、price ){printf("已录入该化妆品信息,本次录入无效!\n");return;}//若二叉排序树中已含 addnode,则无需插入,ruturn 退出函数 f = p; //f 用于保存新结点得最终插入位置p = ((addnode、price) < (p->data、price))? p->lchild:p->rchild; }p=(bintree)malloc(sizeof(bintnode)); //生成待插入得新结点 p->data=addnode; //将新结点加到树上 p->lchild=p->rchild=NULL;if(*t==NULL) *t=p; //原树为空,将值赋值给根结点 else {if(addnode、pricedata、price) f->lchild=p;else f->rchild=p;} }bintree CreatBintree() //创建二叉排序树链表 {bintree t = NULL;datatype addnode; //录入化妆品信息 printf("\"end\",\"-1\"为结束标记:\n");scanf("%s",addnode、brandname);scanf("%lf",&addnode、price);while((strcmp(addnode、brandname,"end")!=0)||(addnode、price!=-1)){InsertBintree(&t,addnode); //将 addnode 插入二叉排序树 scanf("%s",addnode、brandname);scanf("%lf",&addnode、price);}printf("化妆品信息二叉排序树建立成功!\n"); return t; //返回二叉排序树得根地址 } void inorder(bintree t) //递归实现二叉树中序遍历输出 {if(t){ inorder(t->lchild); printf("\t\t 品牌名:%s ",t->data、brandname); printf("\t 价格:%g 元\n",t->data、price); inorder(t->rchild); } }//main、c#include #include #include #include "Cosmetics_Info、h" int mai...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

数据结构实验二 树的应用

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部