内容发布更新时间 : 2024/12/29 14:26:54星期一 下面是文章的全部内容请认真阅读。
课 程 设 计 报 告
课程名称: 数据结构
专业班级: CS1308 学 号: U201315009 姓 名: 陈劲龙 指导教师: 周时阳 报告日期: 2015-4-17
计算机科学与技术
目录
实验一 基于顺序结构的线性表实现 1.1问题描述 1.2系统设计 1.3.系统实现 1.4效率分析
实验二 基于链式结构的线性表实现 2.1问题描述 2.2系统设计 2.3系统实现 2.4效率分析
实验三 基于二叉链表的二叉树实现 3.1问题描述 3.2系统设计 3.3 系统实现 3.4 效率分析 四 实验总结与评价
1 1 1 1 10 11 11 11 11 16 20
错误!未定义书签。 错误!未定义书签。 错误!未定义书签。
20 20
实验一 基于顺序结构的线性表实现
1.1问题描述 基于顺序存储结构,实现线性表的基本的、常见的运算。 1.2系统设计 1.2.1提供14个功能,分别是:
1. IntiaList 8. PriorElem 2. DestroyList 9. NextElem 3. ClearList 10. ListInsert 4. ListEmpty 11. ListDelete 5. ListLength 12. ListTrabverse 6. GetElem 13. SwitchList 7. LocatElem 0. Exit 1.2.2物理结构为顺序存储结构,数据元素为包含一个整型变量item1的结构体:
typedef struct{ int item1; }Elemtype;
typedef struct{ Elemtype * elem; int length; int listsize; }SqList;
1.2.3构建线性表之前先声明一个头结点,用于存储该表的基本信息和首结点地址:
SqList L1, L2; 1.2.4本系统使用了如下预定义常量:
#define TRUE 1 #define FALSE 0 #define OK 2 #define ERROR -1 #define OVERFLOW -2
typedef int status; // Status 是函数的类型,其值是函数结果状态代码
/*------------------------------------------------------*/
#define LIST_INIT_SIZE 100 // 线性表存储空间的初始分配量 #define LISTINCREMENT 10 // 线性表存储空间的分配增量
#define FILE_SAVE_PATH \
//表示数据文件在同级目录下的SqList.txt中
1.3.系统实现
1