"数据结构课程设计-线性表的顺序存储插入算法设计分析及流程图"
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]
```
这是对数据结构课程设计报告的简要总结,报告包含了对线性表顺序存储中插入、查找和删除操作的算法思想、设计分析以及流程图的详细描述。同时还包括了运行环境的配置信息和实验完成的日期。
2010-06-21 上传
2022-05-30 上传
2023-06-29 上传
2023-06-30 上传
2023-07-08 上传
2022-03-08 上传
黑色的迷迭香
- 粉丝: 777
- 资源: 4万+
最新资源
- 新代数控API接口实现CNC数据采集技术解析
- Java版Window任务管理器的设计与实现
- 响应式网页模板及前端源码合集:HTML、CSS、JS与H5
- 可爱贪吃蛇动画特效的Canvas实现教程
- 微信小程序婚礼邀请函教程
- SOCR UCLA WebGis修改:整合世界银行数据
- BUPT计网课程设计:实现具有中继转发功能的DNS服务器
- C# Winform记事本工具开发教程与功能介绍
- 移动端自适应H5网页模板与前端源码包
- Logadm日志管理工具:创建与删除日志条目的详细指南
- 双日记微信小程序开源项目-百度地图集成
- ThreeJS天空盒素材集锦 35+ 优质效果
- 百度地图Java源码深度解析:GoogleDapper中文翻译与应用
- Linux系统调查工具:BashScripts脚本集合
- Kubernetes v1.20 完整二进制安装指南与脚本
- 百度地图开发java源码-KSYMediaPlayerKit_Android库更新与使用说明