数据结构试验总结

数据结构试验总结

ID:30254929

大小:22.04 KB

页数:17页

时间:2018-12-28

数据结构试验总结_第1页
数据结构试验总结_第2页
数据结构试验总结_第3页
数据结构试验总结_第4页
数据结构试验总结_第5页
资源描述:

《数据结构试验总结》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划数据结构试验总结  《数据结构与算法》实验报告  专业班级姓名学号  实验项目  实验一二叉树的应用  实验目的  1、进一步掌握指针变量的含义及应用。  2、掌握二叉树的结构特征,以及各种存储结构的特点及使用范围。  3、掌握用指针类型描述、访问和处理二叉树的运算。  实验内容  题目1:编写一个程序,采用一棵二叉树表示一个家谱关系。要求程序具有如下功能:  用括号表示法(转载于:写论文网:数据结构试验总结)输出家谱二叉树,  查找某人的所有儿子,  查找某人

2、的所有祖先。  算法设计分析  数据结构的定义  为了能够用二叉树表示配偶、子女、兄弟三种关系,特采用以下存储关系,则能在二叉树上实现家谱的各项运算。目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  二叉树型存储结构定义为:  typedefstructSNODE  {charname[MAX];//人名  structSNODE*left;//指向配偶结点  structSNODE

3、*right;//指向兄弟或子女结点  }FNODE;  总体设计  实验由主函数、家谱建立函数、家谱输出函数、儿子查找函数、祖先查找函数、结点定位函数、选择界面函数七个函数共同组成。其功能描述如下:  主函数:统筹调用各个函数以实现相应功能  voidmain()  家谱建立函数:与用户交互建立家族成员对应关系  voidInitialFamily(FNODE*&head)//家谱建立函数  家谱输出函数:用括号表示法输出家谱  输出形式为:父和母,子2和子妻2)  voidPrintFamily(FNODE*head)//家谱输出函数  儿子查找函数:在家谱中查找到某

4、人所有的子女并输出,同时也能辨别出其是否为家族成员与是否有子女  voidFindSon(FNODE*b,charp[])//儿子查找函数  祖先查找函数:在家谱中查找到某人所有的祖先并输出,同时也能辨别出其是否为家族中成员。目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  intFindAncestor(FNODE*head,charson[])//祖先查找函数  结点定位函数:在

5、家谱中找到用户输入人名所对应的结点。  FNODE*findnode(FNODE*b,charp[])//结点定位函数  选择界面函数:为便于编写程序,将用户选择部分独立为此函数。  voidPRINT(int&n)  各函数的详细设计:  voidInitialFamily(FNODE*&head)//家谱建立函数  1:首先建立当前人的信息,将其左右结点置为空,  2:然后让用户确定其是否有配偶,如果没有配偶,则当前程序结束,  3:如果有则建立其配偶信息,并将配偶结点赋给当前人的左结点;  4:再让用户确定其是否有子女,如果有则递归调用家谱建立函数建立子女结点,并将

6、其赋给配偶结点的下一个右结点。  5:如无,则程序结束  voidPrintFamily(FNODE*head)//家谱输出函数  1:首先判断当前结点是否为空,如果为空则结束程序;  2:如果不为空,则输出当前结点信息,目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  3:然后判断其左结点是否为空,如不为空则输出“和配偶信息。  4:再判断配偶结点的右结点是否为空,如不为空则递归调

7、用输出其子女信息,最后输出“)”;  5:当配偶结点为空时,则判断其右结点是否为空  6:如果不为空,则输出“,”,并递归调用输出兄弟信息  7程序结束  FNODE*findnode(FNODE*b,charp[])//结点定位函数  1:当前结点是否为空,为空则返回空;  2:如果和查找信息相同,则返回当前结点;  3:如不然,则先后递归访问其左结点,再不是则递归访问右结点  voidFindSon(FNODE*b,charp[])//儿子查找函数  1:在家谱中定位到要查找的结点,如无则输出“查找不到此人”  2:判断其

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。