顺序存储结构(线性表)
来源:互联网 发布:数据迁移工具在哪 编辑:程序博客网 时间:2024/06/05 16:11
S1线性表的基本概念:
1)有而且只有一个“第一元素”。
2)有而且只有一个“最后元素”。
3)除第一元素之外,其他元素都有唯一的直接前驱。
4)除最后元素之外,其他元素都有唯一的直接后继。
S2计算公式:
若第一个元素的地址是a,每个元素占用的存储空间为d,则数组的第i个元素的地址可以用如下公式计算:
Loc(i)=a+(i-1)*d
S3顺序表元素的插入
1)空表的情况:只能在下标为[1]的地方插入
2)元素未满的情况:可以插入指定的位置。(前提:如下图,不能插入下标为[6]的位置)
假设:我们就以上图为例,如果要将95插入到下标为[2]的位置的时候,这个时候我们需要考虑的是,要
把下标为[2]的位置的空间腾出来给将要插入的元素95所使用,如果做到这一点呢?
解:我们可以用过“搬家”的办法解决这个问题,就是把下标为[4]的元素向后移动,移动到下标为[5]的位置,
然后将下标为[3]的元素移动到下标为[4]的地方,最后将下标为[2]的元素移动到下标为3的位置,这样我们
就把下标为[2]的空间腾出来了,接下来把元素95放入到下标为[2]的位置即可,此时就元素插入成功了。
3)空间已满的情况:这时候就需要再分配一块空间,然后进行插入。(前提:不能插入下标为[8]以及之后的位置)
具体如何插入办法,可以参照2)
S4顺序表元素的删除
1)空表的情况:删除失败。
2)表中有元素的情况:(前提:不能删除下标[4]以后的位置)
假设:我们就以上如为例,如果要删除下标为[3]的元素,那么跟插入有一个相似的地方就是,都需要“搬家”,
只要把下标为[4]的元素移动到下标为[3]的位置即成功删除了下标为[3]的元素。
S5顺序表部分代码
1)有而且只有一个“第一元素”。
2)有而且只有一个“最后元素”。
3)除第一元素之外,其他元素都有唯一的直接前驱。
4)除最后元素之外,其他元素都有唯一的直接后继。
S2计算公式:
若第一个元素的地址是a,每个元素占用的存储空间为d,则数组的第i个元素的地址可以用如下公式计算:
Loc(i)=a+(i-1)*d
S3顺序表元素的插入
1)空表的情况:只能在下标为[1]的地方插入
2)元素未满的情况:可以插入指定的位置。(前提:如下图,不能插入下标为[6]的位置)
假设:我们就以上图为例,如果要将95插入到下标为[2]的位置的时候,这个时候我们需要考虑的是,要
把下标为[2]的位置的空间腾出来给将要插入的元素95所使用,如果做到这一点呢?
解:我们可以用过“搬家”的办法解决这个问题,就是把下标为[4]的元素向后移动,移动到下标为[5]的位置,
然后将下标为[3]的元素移动到下标为[4]的地方,最后将下标为[2]的元素移动到下标为3的位置,这样我们
就把下标为[2]的空间腾出来了,接下来把元素95放入到下标为[2]的位置即可,此时就元素插入成功了。
3)空间已满的情况:这时候就需要再分配一块空间,然后进行插入。(前提:不能插入下标为[8]以及之后的位置)
具体如何插入办法,可以参照2)
S4顺序表元素的删除
1)空表的情况:删除失败。
2)表中有元素的情况:(前提:不能删除下标[4]以后的位置)
假设:我们就以上如为例,如果要删除下标为[3]的元素,那么跟插入有一个相似的地方就是,都需要“搬家”,
只要把下标为[4]的元素移动到下标为[3]的位置即成功删除了下标为[3]的元素。
S5顺序表部分代码
- 线性表线性(顺序)存储结构
- 顺序存储结构(线性表)
- 线性表(一)--顺序存储结构
- 数据结构:线性表(顺序存储结构)
- 线性表的存储结构(顺序存储结构)
- 线性表 -- 顺序存储结构
- 线性表顺序存储结构
- 线性表-顺序存储结构
- 线性表顺序存储结构
- 线性表顺序存储结构
- 线性表--顺序存储结构
- 线性表顺序存储结构
- 线性表顺序存储结构
- 线性表顺序存储结构
- 线性表--顺序存储结构
- 线性表的顺序存储结构(顺序表)
- 线性顺序存储结构
- 数据结构(1)-线性表(顺序存储结构)
- 链式存储结构(线性表)
- Flex开发者需要知道的10件事
- 高性能网络服务器简介
- Python开发环境的搭建和相关的开发工具
- 享受寂寞
- 顺序存储结构(线性表)
- java学习技巧/心得
- Windchill Service方法实现
- Perl基本语法
- 关于对事件驱动架构(event drive architecture)和事件驱动编程的理解。
- 互联网中的伤痛如何来应对
- java ---- image单图片输出 和 动画输出
- GetCommandLine 获取当前进程的命令行字符串 对字符串进行分割
- 存储区