数据结构线性表之顺序表

发布时间:2024年01月08日

一、线性表及顺序表概念

1.线性表的概念;

线性表是零个或多个具有相同特性的数据元素组成的有限序列,线性表是实际中,广泛使用的一种数据结构,相关的有:顺序表,链表,栈,队列,串...

线性表在逻辑上是线性结构,也就是一条连续的线,在物理结构上并不一定是连续的,线性表中以物理结构上连续的有两类:顺序表,线性表。

顺序表:

?链表:

2.顺序表的概念;

顺序表是一段地址连续的存储单位依次存放线性表的数据元素,顺序表有两种,一种是静态的,一种是动态的。

3.顺序表的分类;

静态的顺序表:是给定一个长度一定的数组,数据元素在数组上存储;优点是,开辟空间方便,缺点是,数组大小给小了不够用,给大了造成空间浪费。

动态的顺序表:可根据需要,进行合理的扩容,实际中,动态顺序表往往比静态顺序表更好利用些,所以下面的各接口,都以动态顺序表为主。(其实除了在创建、初始化,扩容顺序表有所差异外,其它的近似)

二、顺序表的功能接口实现

1.顺序表的基础功能;

(形参设置,p表示顺序表的指针,x表示要插入顺序表的元素,k表示要处理的顺序表的位置)

顺序表的初始化:

顺序表的检查+扩容:

顺序表的打印:?

顺序表的销毁:?

2.顺序表的核心功能;

顺序表的任意插入:?

顺序表的尾插:

顺序表的头插:

顺序表的任意删除:

顺序表的尾删:

顺序表的头删:

顺序表的查找元素的索引:

顺序表的由索引查找元素:

顺序表的数据的修改

3.顺序表的附加功能;

附加功能就不实现了,

三、顺序表总结

为了方便你们对顺序表进行验证,和更深刻的理解,我会将所有的代码放在一起,你们可通过此链接或者完整的源代码;

线性表之【顺序表】的实现/线性表之【顺序表】的实现 · 残风也想永存/C语言项目 - 码云 - 开源中国 (gitee.com)

文章来源:https://blog.csdn.net/FSRMWK/article/details/135460387
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。