- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
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
- 跨境电子商务促进条例.docx
- 货物买卖合同英文翻译.docx
- 诱导公式+二-四课件-2024-2025学年高一上学期数学人教A版(2019)必修第一册.pptx
- 指数函数课件-2024-2025学年高一上学期数学人教A版(2019)必修第一册++.pptx
- 任意角+2024-2025学年高一数学同步教材课件(人教A版2019必修一).pptx
- 等比数列的前n项和公式(1)课件-2024-2025学年高二上学期数学人教A版(2019)选择性必修第二册.pptx
- 弧度制下的扇形的弧长与面积公式(2)课件-2024-2025学年高一上学期数学人教A版(2019)必修第一册.pptx
- 三角函数的概念课件-2024-2025学年高一上学期数学人教A版(2019)必修第一册+.pptx
- 古诗文诵读+课件+2024-2025学年统编版高中语文必修上册.pptx
- 物业保安上班规章制度 .pdf
最近下载
- 关于集团公司办公室搬迁工作方案.pdf VIP
- 商业银行信贷业务风险控制课件PPT(34张).ppt
- (完整word版)九年级上册仁爱英语单项选择题汇总(Unit1)A4直接打印.doc
- 中信证券-汽车传感器行业系列深度报告(一):磁传感器,无接触测量位置、速度、电流,同步受益于汽车智能化-电动化.pdf
- Morgan Stanley Fixed-2025年中国经济展望 论通缩之持久战-111868053.pdf VIP
- 政府补助类专项审计报告.docx
- 公司关于进一步深化“法治公司”建设的实施方案.docx VIP
- 医院感染现患率调查培训课件.pptx VIP
- ISO45001-内部审核检查表-参考.xlsx VIP
- 销售管理制度和流程汇编.doc VIP
文档评论(0)