1 / 48
文档名称:

数据结构课程实验报告(14).docx

格式:docx   大小:177KB   页数:48页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据结构课程实验报告(14).docx

上传人:guoxiachuanyue 2021/2/3 文件大小:177 KB

下载得到文件列表

数据结构课程实验报告(14).docx

文档介绍

文档介绍:课程实验报告
课程名称:
数据结构上机实验
专业班级:
信息安全1302
学 号:
姓 名:
指导教师:
报告日期:
计算机科学与技术学院
1 课程实验概述
2 实验一 基于顺序结构的线性表实现

问题描述

系统设计

系统实现

效率分析
3 实验二 基于链式结构的线性表实现

问题描述

系统设计

系统实现

效率分析
4 实验三 基于二叉链表的二叉树实现

问题描述

系统设计

系统实现

效率分析
5 实验总结与评价
目录
错误 ! 未定义书签。
错误 ! 未定义书签。
错误 ! 未定义书签。
错误 ! 未定义书签。
错误 ! 未定义书签。
错误 ! 未定义书签。
错误 ! 未定义书签。
错误 ! 未定义书签。
错误 ! 未定义书签。
错误 ! 未定义书签。
错误 ! 未定义书签。
错误 ! 未定义书签。
错误 ! 未定义书签。
错误 ! 未定义书签。
课程实验概述
通过过实验,我们应该有以下的收获:
加深对数据结构和算法的理解,进一步提高编程能力;
培养和提高分析问题和解决问题的能力;
学会整理资料,撰写规范的实验报告
通过对本次实验线性表、链表以及二叉树的实现,深刻掌握其各种操作方法及技巧,为接 下来的学****打下更坚实的基础。
实验一 基于顺序结构的线性表实现
问题描述
基于顺序存储结构,实现线性表的基本的,常见的运算:
提示:
(1)提供一个实现功能的演示系统;
(2)具体物理结构和数据元素类型自行选定;
( 3)线性表数据可以使用磁盘文件永久保存
系统设计
进而设
通过完成相应的函数, 然后用一个简单的界面把整个函数串起来成为一个程序, 计出整个系统。
系统实现
头文件与常量定义
/* Linear Table On Sequence Structure */
#include <>
#include <>
#include <>
#define TRUE 1
#define FALSE 0
#define OK 1
#define ERROR 0
#define INFEASTABLE -1
#define OVERFLOW -2
typedef int status;
typedef int ElemType; // 数据元素类型定义
/* page 22 on textbook */
#define LIST_INIT_SIZE 100
#define LISTINCREMENT 10
typedef struct{ //顺序表(顺序结构)的定义
ElemType * elem;
int length;// 数组长度
int listsize;// 数组大小
}SqList;
/* page 19 on textbook */
status IntiaList(SqList & L);
//数组初始化
status DestroyList(SqList & L);
//销毁数组
status ClearList(SqList &L);
//清理数组
status ListEmpty(SqList L);
//判断是否为空
int ListLength(SqList L);
//求长度
status GetElem(SqList L,int i,ElemType & e);
//获取表中第 i 个元素,并用 e 将值传出
status LocateElem(SqList L,ElemType e);
//确定元素第一次出现的位置
status PriorElem(SqList L,ElemType cur,ElemType & pre_e);
//求元素的前驱结点
status NextElem(SqList L,ElemType cur,ElemType & next_e);
//求元素的后继节点
status ListInsert(SqList & L,int i,ElemType e);
//在位置 i 插入元素
status ListDelete(SqList & L,int i,ElemType & e);
//删除位置 i 的元素前用 e 将值传出
status L