《数据结构与算法分析》课程设计:顺序表、单链表、顺序栈、查找、排序算法 下载本文

内容发布更新时间 : 2024/11/15 17:32:18星期一 下面是文章的全部内容请认真阅读。

*******大学

《数据结构与算法分析》课程设计

题 目:数据结构上机试题 学生姓名: 学 号:

专 业:信息管理与信息系统 班 级: 指导教师:

2014年04月

数据结构与算法分析课程设计

目录

一、顺序表的操作 ...................................................................................................................... 2

【插入操作原理】 ................................................................................................................... 2 【删除操作原理】 ................................................................................................................... 2 【NO.1代码】 .......................................................................................................................... 3 【运行截图演示】 ................................................................................................................... 7

二、单链表的操作 .................................................................................................................... 10

【创建操作原理】 ................................................................................................................. 10 【插入操作原理】 ................................................................................................................. 10 【删除操作原理】 ................................................................................................................. 10 【NO.2代码】 ........................................................................................................................ 11 【运行截图演示】 ................................................................................................................. 20

三、顺序栈的操作 .................................................................................................................... 25

【数值转换原理】 ................................................................................................................. 25 【NO.3代码】 ........................................................................................................................ 26 【运行截图演示】 ................................................................................................................. 30

四、查找算法 ............................................................................................................................. 32

【顺序查找原理】 ................................................................................................................. 32 【折半查找原理】 ................................................................................................................. 32 【NO.4代码】 ........................................................................................................................ 33 【运行截图演示】 ................................................................................................................. 38

五、排序算法 ............................................................................................................................. 40

【直接插入排序原理】 ......................................................................................................... 40 【快速排序原理】 ................................................................................................................. 40 【NO.5代码】 ........................................................................................................................ 41 【运行截图演示】 ................................................................................................................. 46

1

数据结构与算法分析课程设计

一、顺序表的操作

(1)插入元素操作:将新元素x插入到顺序表a中第i个位置; (2)删除元素操作:删除顺序表a中第i个元素。

【插入操作原理】

线性表的插入操作是指在线性表的第i-1个数据元素和第i个数据元素之间插入一个新的数据元素,就是要是长度为n的线性表:

?a1,……,ai?1,ai,……,an?

变成长度为n+1的线性表:

?a1,……,ai?1,b,ai,……,an?

数据元素ai?1和ai之间的逻辑关系发生了变化。

(其【插入原理】在课本P23的算法2.3有解释)

【删除操作原理】

反之,线性表的删除操作是使长度为n的线性表:

?a1,……,ai?1,ai,ai?1,……,an?

变成长度为n-1的线性表:

?a1,……,ai?1,ai?1,……,an?

数据元素ai?1、ai和ai?1之间的逻辑关系发生变化,为了在存储结构上放映这个变化,同样需要移动元素。

(其【删除原理】在课本P24的算法2.4有解释)

2