🌏个人博客主页:意疏-CSDN博客
希望文章能够给到初学的你一些启发~ 如果觉得文章对你有帮助的话,点赞 + 关注+ 收藏支持一下笔者吧~
开篇说明
数据结构是计算机科学中的一个重要概念,它涉及如何组织和存储数据以便高效地进行访问和修改。
本身致力于给新手小白一个间接明了的教程(包括我)。
一、数据结构绪论
首先我们要知道什么是一个程序:
程序就是由数据结构+算法组成的
我们先来看数据结构:
数据结构是指:相互之间存在一种或多种特定关系的数据元素的集合。
包括三个方面:逻辑结构、物理结构和数据运算。
逻辑结构是对数据之间关系的描述,与数据的存储结构无关。
逻辑结构分为两大类:线性结构和非线性结构。
数据元素之间的逻辑结构有四种基本类型:
- 集合:结构中的数据元素除“同属一个集合外”,没有其他关系。
- 线性结构:结构中的数据元素存在一对一关系。
- 树型结构:结构中的数据元素之间存在一对多关系。
- 图状结构或网状结构:结构中的数据元素存在多对多的关系。
物理结构 / 存储结构:是数据的逻辑结构在计算机中的表示(映像)。描述数据具体在内存中的存储。
数据结构的四种存储方式:
- 顺序存储:顺序存储是指把逻辑上相邻结点存储在物理位置上相邻的存储单元中(按顺序)。借助C++中的数组来表示。
- 链式存储:链式存储不要求逻辑上相邻结点在物理位置也相邻。结点间的逻辑关系(链式)。是由附加的指针字段表示的。借助C++指针表述。
- 索引存储:在存储结点信息时,除建立存储结点信息外,还建立附加的索引表,来标记结点的地址。索引项的一般形式为<关键字
结点
,地址指针
>关键字标识唯一 一个结点,地址作为指向结点的指针。 - 散列存储:是根据结点关键字通过散列函数直接计算出该结点的存储地址,本质上为顺序存储方法的拓展。
线性表
线性表:是具有相同回溯句类型的n(n>0)个数据元素的有限序列,它是典型的线性结构。除第一个元素外,每个元素仅有一个直接前驱,除最后一个元素外,每个元素有且仅有一个直接后继。
意气风发,漫卷疏狂
学习是成长的阶梯,每一次`的积累都将成为未来的助力。我希望通过持续的学习,不断汲取新知识,来改变自己的命运,并将成长的过程记录在我的博客中。如果我的博客能给您带来启发,如果您喜欢我的博客内容,请不吝点赞、评论和收藏,也欢迎您关注我的博客。
您的支持是我前行的动力。听说点赞会增加自己的运气,希望您每一天都能充满活力!
愿您每一天都快乐,也欢迎您常来我的博客。我叫意疏,希望我们一起成长,共同进步。
我是意疏 下次见!