- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE
PAGE 1
《数据结构》实验指导书
南京工程学院通信工程学院
目 录
TOC \o 1-3 \h \z \u 前 言 1
实验一 线性表的基本操作 2
实验二 栈、队列的设计实现 4
实验三 串的模式匹配算法 6
实验四 二叉树的建立及遍历算法的实现 8
实验五 图的建立及遍历算法的实现 11
实验六 哈希表的设计与实现 14
实验七 排序算法实现 17
附录A 实验的步骤和规范 19
前 言
《数据结构》课程是信息工程、通信工程(计算机通信)专业的重要专业基础课程之一。
本书是为配合《数据结构》实验教学大纲而编写的实验指导书,其目的是使学生消化理论知识,加深对讲授内容的理解,尤其是一些算法的实现及其应用,培养学生独立编程和调试程序的能力,使学生对数据结构有更深刻的认识。
本实验指导书的内容都是基于C语言的,因此,要求学生对C语言和C++中的引用知识点要有一定的了解,建议使用VC++作为实验平台。
希望同学们在使用本实验指导书及进行实验的过程中,能够发现问题,并提出建议。
实验一 线性表的基本操作
一、实验目的:
1.熟悉Visual C++ 6.0 IDE开发环境。
2.掌握线性表的顺序与链式存储结构
3.掌握线性表的基本操作:初始化、插入、删除、查找算法。
二、实验内容:
1.定义线性表的链式存储结构
2.在线性表的链式存储结构上,编写函数实现链表的初始化,插入、删除,输出、销毁等算法。
三、实验要求:
1.数据结构定义正确,程序编码规范。
2.撰写实验报告,写出程序运行结果。
3.分析算法,写出本次实验总结。
四、实现提示:
1.数据结构定义
typedef int ElemType;
typedef struct LNode
{ //结点类型
ElemType data;
struct LNode *next;
} LNode, *LinkList;
2.标准库函数malloc,free ( 相应的头文件 stdlib.h )
p=(LNode *)malloc(sizeof(LNode));该语句的功能是申请分配一个类型为LNode的结点的地址空间,并将首地址存入指针变量p 中。当结点不需要时可以用标准函数free(p)释放结点存储空间,这时p为空值(NULL)。
五、思考与提高
1. 编写函数求链表的长度。
2. 编写函数取得链表的第i个数据元素。
实验二 栈、队列的设计实现
一、实验目的
1.掌握栈的顺序表示和基本操作算法
2.掌握队列的链式表示和基本操作算法
二、实验内容:
1.定义顺序栈的数据结构
2.编写函数实现的栈的初始化、入栈、出栈、判断栈是否为空的算法,并应用与表达式的括号匹配检测。
3.定义队列的链式数据结构
4.编写函数实现链队列的入队列、出队列算法
三、实验要求:
1.数据结构定义正确,程序编码规范。
2.撰写实验报告,写出程序运行结果。
3.分析算法,写出本次实验总结。
四、实现提示
1.顺序栈的数据结构
#define STACK_INIT_SIZE 100
#define STACKINCREMENT 10
typedef int SElemType;
typedef struct
{
SElemType *base;
SElemType *top;
int stacksize;
}SqStack;
2.表达式的括号匹配算法提示
int match (char *expr)
{ SqStack S;
int i,len;
int temp;
InitStack(S);
len=strlen(expr);
for(i=0;ilen;i++)
{
if( expr[i]==( )
Push(S,expr[i]);
if( expr[i]==) )
if(!Pop(S,temp))
return 0;
}
if(EmptyStack(S))
return 1;
else
return 0;
}
如: (3+4)*12+(5-6)/2 match
(3+4)*12)+(5-6)/2) not match
五、思考与提高
1.用栈实现进制转换(十进制转换成二进制)
2.模拟服务台前的排队现象问题
实验三 串的模式匹配算法
一、实验目的:
1.掌握串的顺序存储结构
2.掌握串的基本算法
二、实验内容:
1.定义串的顺序存储结构。
2.编写函数实现串的初始化、分配、取子串算法
3.编写函数据实现串的模式匹配
三、实验要求:
1.数据结构定义正确,程序编码规范。
2.
您可能关注的文档
- java实验三完整版.doc
- 形容词比较级和最高级.ppt
- 办公自动化实训报告.doc
- 水利安全生产工作总结_生产安全工作总结.doc
- 某公司信息保密项目调研分析与解决方案.doc
- Flash实训大纲完整版.doc
- 电磁场与微波实验天线部分实验一.doc
- 大学生活适应情况分析调研报告.doc
- 科学实验室开放活动方案(2015).doc
- Android实验报告—网络通信.doc
- 2025福建海峡银行董事会办公室诚聘英才备考题库含答案详解(实用).docx
- 2025渤海银行太原分行招聘备考题库(含答案详解).docx
- 2025玉溪市峨山县林业和草原局招聘短期综合应急救援队员备考题库(11人)含答案详解(黄金题型).docx
- 2025玉溪市公安局第四季度公开招聘警务辅助人员备考题库(187人)含答案详解(典型题).docx
- 2025湖北银行小企业金融服务中心社会招聘备考题库含答案详解(达标题).docx
- 2025福建福州市司法局社区矫正管理局招聘1人备考题库及答案详解(考点梳理).docx
- 2025秋季乌鲁木齐银行招聘备考题库附答案详解.docx
- 2025海南东方市总工会招聘社会化工会工作者3人备考题库及答案详解(易错题).docx
- 2025福建海峡银行龙岩分行诚聘备考题库附答案详解(培优b卷).docx
- 2025西安银行招聘备考题库含答案详解(能力提升).docx
最近下载
- 提高非开挖定向钻进施工合格率.pdf
- ASME RTP-1-2019 国外国际规范.pdf
- 小学生百科知识竞赛PPT课件.pptx VIP
- 新上任村书记就职发言稿(通用版).docx VIP
- 2025年检察机关聘用制书记员招聘考试题库及答案(综合知识+法律基础知识).docx VIP
- SINAMICS-G120XA变频器操作说明书.pdf VIP
- 《新闻心理学》课件(全).pptx VIP
- 华福证券-策略深度报告:AI的宏观悖论与社会主义全球化.pdf VIP
- 2025年检察机关聘用制书记员招聘考试题库(综合知识+法律基础知识).docx VIP
- 个人向个人借款协议简易版本8篇.docx VIP
原创力文档


文档评论(0)