欢迎来到天天文库
浏览记录
ID:55355523
大小:41.50 KB
页数:7页
时间:2020-05-11
《用二叉树实存储信息.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、用二叉树实现存储信息.txt老子忽悠孩子叫教育,孩子忽悠老子叫欺骗,互相忽悠叫代沟。▲男人这花花世界,我要用什么颜色来吸引你。#include#includeusingnamespacestd;typedefstruct_student{intid;char[20]Name;IntAge;intMath;//(数学成绩)};//学生结构体structtreeitem{structtreeitem*lchild;structtreeitem*rchild;struct_studentmystudent;};//二叉树结构体classStudent{
2、public:Student(void);~Student(void);voidCreate(structtreeitem*Tnode);//创建voidFind(structtreeitem*tree,inti);//查看节点是否存在voidSearch(Student&tree);//查询节点voidChange(structtreeitem*Tnode,inti);//修改voidDeleteNode(structtreeitem*tree,inti);//删除Student*node;//根节点private:booltj;inti_id,i_age,i_math;charc_
3、ch;};==================================.cpp=============================Student::Student(void){tj=false;}Student::~Student(void){}voidStudent::Create(structtreeitem*Tnode)//创建1{cin>>i_id,c_ch,i_age,i_math;if(id!=null&&ch!=''&&age!=null&&math!=null){struct_student*Ts;Ts->id=i_id;Ts->Name=c_ch;Ts-
4、>Age=i_age;Ts->Math=i_math;Tnode=(structtreeitem*)malloc(sizeof(structtreeitem));Tnode->mystudent=Ts;Create(Tnode->lchild);//生成左子树Create(Tnode->rchild);//生成右子树cout<<"CreateComplated!"<5、ee!=NULL){if(tree->id==i){tj=true;return;}if(tree->lchild!=NULL){if(tree->lchild->id==i){tj=true;return;}}if(tree->rchild!=NULL){if(tree->rchild->id==i){tj=true;return;}}Find(tree->lchild,i);Find(tree->rchild,i);}}voidStudent::Search(Student&tree){if(tree!NULL){if(tree->lchild->lchild==NULL&&tre6、e->lchild->rchild==NULL){returntree->lchild;}elseif(tree->rchild->lchild==NULL&&tree->rchild->rchild==NULL){returntree->rchild;}returnSearch(tree->lchild);returnSearch(tree->rchild);}}voidStudent::Change(structtreeitem*Tnode,inti){Find(Tnode,i);if(!tj){cout<<"无此节点!"<>i_age,i_math7、,c_ch;Tnode->mystudent.Age=i_age;Tnode->mystudent.Name=c_ch;Tnode->mystudent.Math=i_math;}}voidStudent::DeleteNode(structtreeitem*tree,inti){Find(tree,i);if(!tj){cout<<"无此节点!"<id==i)//要删
5、ee!=NULL){if(tree->id==i){tj=true;return;}if(tree->lchild!=NULL){if(tree->lchild->id==i){tj=true;return;}}if(tree->rchild!=NULL){if(tree->rchild->id==i){tj=true;return;}}Find(tree->lchild,i);Find(tree->rchild,i);}}voidStudent::Search(Student&tree){if(tree!NULL){if(tree->lchild->lchild==NULL&&tre
6、e->lchild->rchild==NULL){returntree->lchild;}elseif(tree->rchild->lchild==NULL&&tree->rchild->rchild==NULL){returntree->rchild;}returnSearch(tree->lchild);returnSearch(tree->rchild);}}voidStudent::Change(structtreeitem*Tnode,inti){Find(Tnode,i);if(!tj){cout<<"无此节点!"<>i_age,i_math
7、,c_ch;Tnode->mystudent.Age=i_age;Tnode->mystudent.Name=c_ch;Tnode->mystudent.Math=i_math;}}voidStudent::DeleteNode(structtreeitem*tree,inti){Find(tree,i);if(!tj){cout<<"无此节点!"<id==i)//要删
此文档下载收益归作者所有