数据结构实验指导书学生版
更新时间:2023-10-07 05:28:01 阅读量: 综合文库 文档下载
LIAOCHENG UNIVERSITY
数据结构 实验指导书
聊城大学计算机学院
2015年9月
《数据结构》课程实验指导书
目 录
实验一 线性表 ........................................... 1
基本信息 ........................................................ 1
实验预习 ........................................................ 1 实验过程 ........................................................ 1 实验数据和实验结果记录 ......................................... 11 实验结果分析 ................................................... 12
实验二 栈和队列 ........................................ 12
基本信息 ....................................................... 12 实验预习 ....................................................... 12 实验过程 ....................................................... 13 实验数据和实验结果记录 ......................................... 16 实验结果分析 ................................................... 17
实验三 二叉树 .......................................... 17
基本信息 ....................................................... 17 实验预习 ....................................................... 18 实验过程 ....................................................... 18 实验数据和实验结果记录 ......................................... 20 实验结果分析 ................................................... 20
实验四 查找 ............................................ 21
基本信息 ....................................................... 21 实验预习 ....................................................... 21 实验过程 ....................................................... 21 实验数据和实验结果记录 ......................................... 22 实验结果分析 ................................................... 23
I
《数据结构》课程实验指导书
实验一 线性表
基本信息
实验课程:数据结构 课程学分:4
设课形式:非独立 实验项目:线性表 项目学时:4
项目类型:设计
实验预习 实验目的和要求: 1、熟悉C语言集成开发环境; 2、会定义线性表的顺序结构和链式结构; 3、熟悉对线性表的基本操作,如插入、删除等。 实验内容和原理或涉及的知识点: 自己编写程序实现线性表的建立、插入、删除等功能。 实验条件: 具有C语言集成开发环境的计算机 实验设计方案: 设计的顺序表算法有: 1、初始化顺序表; 2、顺序表的插入操作; 3、顺序表的删除操作。 设计的链表算法有: 1、建立链表; 2、链表的插入操作; 3、链表的删除操作; 4、链表数据元素的访问。
实验过程
1、根据实验预习阶段的实验设计方案,顺序表算法伪C代码如下。
typedef struct
1
《数据结构》课程实验指导书
{
ElemType *elem; int length; int listsize; }SqList;
status InitList(SqList &L) {
L.elem=(ElemType *) malloc(LIST_INIT_SIZE*sizeof(ElemType)); if (!L.elem) exit(OVERFLOW); L.length=0;
L.listsize=LIST_INIT_SIZE; return OK; }
status ListInsert_Sq(SqList &L, int i, ElemType e) {
if (i<1||i>L.length+1) return ERROR; if (L.length>=L.listsize) {newbase
=
(ElemType
(L.listsize+LISTINCREMENT)*sizeof(ElemType)) ; if (!newbase) exit (OVERFLOW); L.elem = newbase;
L.listsize=L.listsize+LISTINCREMENT; }
q=&(L.elem[i-1]);
for (p=&(L.elem[L.length-1]);p>=q; --p) *(p+1)=*p;
*q=e; L.length++; return OK; }
status ListDelete_Sq(SqList &L, int i, ElemType &e) {
if ((i<1)||i>L.length) return ERROR; p=&L.elem[i-1]; e=*p;
q=L.elem+L.length-1; for (++p; p<=q; ++p)
*(p-1)=*p; --L.length; return OK;
} //ListDelete_Sq
2、将算法细化为程序代码如下。
2
*)realloc(L.elem,
《数据结构》课程实验指导书
#include
#define OK 1 #define ERROR 0 #define OVERFLOW -2 #define LISTINCREMENT 10 #define LIST_INIT_SIZE 20 typedef int status; typedef int ElemType; typedef struct {
ElemType *elem; int length; int listsize; } SqList;
status InitList(SqList *L); // 构造一个空的线性表
status ListInsert_Sq(SqList *L, int i, ElemType e); // 在 L 中第 i 个位置之前插入 e ,L 长度加 1
status ListDelete_Sq(SqList *L, int i, ElemType *e); // 删除 L 的第 i 个数据元素,并用 e 返回其值,L 长度减 1 void visit(ElemType e); // 打印 e 的值到显示器
void ListTraverse(SqList L, void visit(ElemType)); // 依次对 L 的每个元素调用函数 visit(ElemType)
int main() {
int i, j; SqList L; InitList(&L);
puts(\ for (i=1; i<=6; i++) {
scanf(\
ListInsert_Sq(&L, i, j); }
puts(\ ListTraverse(L, visit);
puts(\ scanf(\
puts(\ scanf(\
3
正在阅读:
数据结构实验指导书学生版10-07
关于钉钉工作日志的实行规定01-18
意外的发现作文07-02
秋游日记150字10-29
2019年我眼中的雾霾作文06-12
青岛市低碳城市建设评价研究11-02
买书记作文600字07-11
半幅施工安全管理专项方案12-14
论文06-22
三氯化铁01-10
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 学生版
- 指导书
- 数据结构
- 实验
- 木偶奇遇记阅读指导课教学设计
- 中评协03号资产评估操作规范意见 - 图文
- 国内外海洋经济发展对辽宁海洋经济发展的启示
- 数值分析第二章复习与思考题
- 《计算机网络(第5版)》常见问题
- 20套试卷合集上海市实验学校2019-2020学年数学高三上期中模拟试卷含答案 - 图文
- 汽车理论习题集(附答案)
- 初等数论练习题答案
- 金融市场学模拟试题及答案分解
- 中考数学考点复习,成比例线段,线段、角、相交线与平行线,三角形基础知识,等腰三角形
- 绿色校园环保标语
- 对“如何创建学习型社区及社区教育师资队伍建设”的思考和探索
- 数控机床的基本组成以及发展前景 - 图文
- 燃运部内部管理制度汇编 - 图文
- 银行业金融机构重要信息系统投产及变更管理办法
- 2018年人教版二年级下册易错字易错拼音题集
- 安徽旺安包装有限公司年产1000万条编织袋生产线建设项目全本公示 - 图文
- 高中化学期中考试卷(难度系数:0.55-0.41)-20150605
- 宝马刷机
- 大学毕业实习自我鉴定总结3000字