"数据结构课程设计-线性表的顺序存储插入算法设计分析及流程图"

0 下载量 136 浏览量 更新于2023-12-30 收藏 616KB DOC 举报
数据结构课程设计报告 桂林航天工业学院 实验报告系(部):计算机科学与工程系 课程名称: 数据结构 专业班级: 计算机应用技术1班 学号: 学生姓名: 完成日期: 2016年12月22日 一、运行环境 操作系统: Windows 10 64位 操作系统编译软件: Microsoft Visual C 6.0 处理器: Intel Core 2 CPU 6320 @ 1.86GHz 1.86GHz 安装内存(RAM): 2.00GB 二、算法设计的思想和设计分析及流程图 1. 线性表的顺序存储 1. 插入 算法思想: 查找到元素X需要插入到线性表L的位置i,将该位置i后面的元素后移,将要元素X插入到i位置,表长加1。 设计分析: 先使用if(L->last==MAXSIZE-1)提示空间满,else if(i<1||i>L->last+1)提示位置错误,函数判断位置i在该线性表L中是否存在,若位置i正确,再使用for(j=L->last;j>=i-1;j--)依次将元素后移一位,最后将元素X插入到位置i,表长加1。 流程图: ``` [START] -> 输入元素X和插入位置i -> 确认位置是否正确 -> 确认表是否已满 -> 开始位置j=L->last -> 循环:将元素后移一位 -> 插入元素X到位置i -> 表长+1 -> [END] ``` 2. 查找 算法思想: 从线性表L中查找给定元素X,并返回其位置i,若不存在返回0。 设计分析: 使用for循环逐一遍历线性表L中的元素,若找到元素X,则返回其位置i,若遍历完线性表L仍未找到元素X,则返回0。 流程图: ``` [START] -> 输入要查找的元素X -> 开始遍历线性表 -> 循环:逐一查找线性表中的元素 -> 若找到元素X,返回位置i -> 若遍历完仍未找到元素X,返回0 -> [END] ``` 3. 删除 算法思想: 从线性表L中删除指定位置i的元素,若删除成功,返回被删除的元素,表长减1。 设计分析: 使用if判断要删除的位置i是否合法,若合法则将要删除位置i后的所有元素依次前移一位,并返回被删除的元素,表长减1。 流程图: ``` [START] -> 输入要删除的位置i -> 确认位置是否正确 -> 开始位置j=i -> 循环:将元素前移一位 -> 返回被删除的元素 -> 表长-1 -> [END] ``` 这是对数据结构课程设计报告的简要总结,报告包含了对线性表顺序存储中插入、查找和删除操作的算法思想、设计分析以及流程图的详细描述。同时还包括了运行环境的配置信息和实验完成的日期。