信管数据结构实验.doc

信管数据结构实验.doc

ID:61425678

大小:49.00 KB

页数:15页

时间:2021-01-29

信管数据结构实验.doc_第1页
信管数据结构实验.doc_第2页
信管数据结构实验.doc_第3页
信管数据结构实验.doc_第4页
信管数据结构实验.doc_第5页
资源描述:

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

1、数据结构实验一C语言结构体与指针一、实验目的巩固复习前期所学C语言的函数参数传递、指针和结构体等知识点,加强学习数据结构语言基础。二、实验内容实现病历查询功能。具体要求如下:定义一个结构体描述病人病历信息(病历号,姓名,年龄,性别,症状);先输入5个病人的信息,然后输入姓名,在5个病历中进行查找,如果找到则显示该人的信息,如果没有找到,则显示“查无此人”。假设病历类型名为patient,使用指针,请使用以下两个函数。voidreadin(patient*p);//用来输入病人信息。voidsearch(patient*p,char*x);//根据姓名查询病人病历信息,并打印出来。

2、三、实验源代码此处写程序源代码,请在程序中适当注释,便于老师更快地看懂你的程序。四、实验结果此处写出程序运行的结果,即输入数据是什么,输出数据是什么,分析结果是否正确,如果不正确是什么原因。五、实验心得此处写出完成此实验后有什么收获,碰到什么因难,又是如何解决的。请不要写“这门课好难学”、“一点也不会”之类的话语,因为这对你学习并没有帮助。关键是通过实验发现自己不会的知识点,然后攻克它!数据结构实验二顺序表的运用一、实验目的1、掌握建立顺序表的基本方法。2、掌握顺序表的插入、删除算法的思想和实现,并能灵活运用二、实验内容用顺序表实现病历信息的管理与查询功能。具体要求如下:1.利用

3、教材中定义顺序表类型存储病人病历信息(病历号,姓名,年龄,性别,症状);要求使用头文件,程序具有输入、输出功能。2.设计顺序表定位查找算法,完成的功能为:在线性表L中查找数据元素x,如果存在则返回线性表中和x值相等的第1个数据元素的序号;如果不存在,则返回-1。函数定义为intListFind(SeqListL,char*x)请在主函数中测试查找是否存在姓名为x的病人,并根据返回的序号打印出病人信息。数据结构实验三有序单链表一、【实验目的】1、掌握建立单链表的基本方法。2、掌握单链表的插入、删除算法的思想和实现二、【实验内容】仿照教材中的单链表示例,设计一个有序单链表。有序单链表

4、的定义:逻辑结构:有序线性表存储结构:链式操作集合:初始化、插入、删除、撤销(1)ListInitiate(L)初始化线性表,生成一个空表L。(2)ListInsert(L,x)在有序表L中插入数据元素x,使得新表仍然有序。(3)ListDelete(L,x)删除有序表L中的数据元素x,若删除成功则返回1,不成功则返回0。(4)Destroy(L)撤销单链表要求:1.有序单链表的操作集合有如下操作:初始化、插入、删除、撤销。2.通过主函数验证所设计的有序单链表的正确性。提示:1.插入操作时,从链表的第一个数据元素结点开始,逐个比较每个结点的data域值和x的值,当data小于等于

5、x时,进行下一个结点的比较;否则就找到了插入结点的合适位置,此时申请新结点把x存入,然后把新结点插入;当比较到最后一个结点仍有data小于等于x时,则把新结点插入单链表尾。2.删除操作时,从链表的第一个数据元素结点开始,逐个比较每个结点的data域值和x的值,当data小于等于x时,进行下一个结点的比较;否则就找到了要删除的结点,删除结点后释放结点。如果到了表尾还没有找到值为x的结点,则链表中没有要删除的元素。数据结构实验四栈和队列的应用一、实验目的1、掌握顺序堆栈的类型定义方法。2、掌握顺序堆栈上实现的几种基本操作。3、掌握顺序队列的类型定义方法。4、掌握顺序队列上实现的几种基

6、本操作。二、实验内容设计算法判断一个字符序列是否是回文,要求采用队列和堆栈结构。提示:设字符数组str中存放了要判断的字符串。把字符数组中的字符逐个分别存入队列和堆栈,然后逐个出队列和退栈并比较出队列的字符和退栈的字符是否相等,若全部相等则该字符序列是回文,否则就不是回文。三、实验源代码四、实验结果数据结构实验五递归算法的实现一、实验目的1、掌握递归原理2、掌握一些常用问题的递归算法设计二、实验内容1.有这样一个故事:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第30天

7、早上想再吃时,见只剩下一个桃子了。那么你知道猴子第一天共摘了多少个桃子吗?1)请用递归和非递归算法分别实现猴子吃桃问题的求解。2)求解过程请用函数实现。要求能够计算:如果在第N天只剩下一个桃子了,那么第一天共摘了多少个桃子。2.编写折半查找算法的递归实现和非递归实现,并在VC++的调试环境下观察折半查找递归程序的调用与返回过程,并记录其过程和返回值。 提示:将要查找的元素key与查找区间正中元素相比,若key小,则查找区间缩小至前半部份查找,若key大,则查找区间缩小至后半部份查

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

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

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