数据结构家谱管理系统二叉链表
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据结构家谱管理系统二叉链表
《项目实训二》
项目名称 __ 家谱管理系统__
姓名__ ___________班级 __ _______________
学号__ ________________
指导教师 __ __________ __
.1
模块划分:
1、统计模块
(1)统计家族总人数、健在人数、几代人
(2)主要函数:
int Generation(Node *root); //这个家族共有几代人
int NumberOfPeople( ); //家族的总人数
int LifeNum( ); //健在人数
(3)实现方法:静态成员变量
(4)实现结果:
2、更新模块
(1)创立家谱、增加成员、删除成员、成员改名
(2)主要函数:
Node* Creat( ); //构造函数调用
void AddNewPeople(Node *root,string FatherName,string NAme); //
增加新的家族成员
int DeletePeople(Node *root,string FatherName,string Deletepeople);
//删除家族成员
int SetNewName(Node *root,string NAme,string NewName); //更改
姓名
(3)实现方法:创立家谱和成员改名主要经过递归调用;增加成员和删除成员主要经过栈的非递归调用。
(4)实现结果: