1.1 绪论

数据结构绪论

本篇主要内容为数据结构入门知识,包括基本概念和数据结构的三要素,话不多说,上正文。

基本概念

数据 信息的载体,用于描述客观事物的属性,能被计算机识别和处理的符号集合,如视频,图片,文字,声音

数据元素和数据项 数据元素是数据的基本单位,通常作为一个整体考虑,比如我的微博账号;一个数据元素可以由多个数据项构成,比如我的微博账号包括账号,密码,个人简介等;数据元素与数据项的关系可以近似的理解为Excel中一行与一个单元格的关系

数据结构 相互之间存在一种或多种关系的数据的集合

数据对象 具有相同性质的数据元素的集合,不强调相互之间的关系,只强调性质相同

数据类型

  • 原子类型:不可再分的数据类型,比如bool、int等
  • 结构类型:可以理解为由多个原子类型复合而成的数据类型
  • 抽象数据类型 ADT(Abstract Data Type):抽象的数据组织及相关操作,只包含逻辑结构和定义的相关操作,只有在实现的时候才考虑物理结构

数据结构的三要素

逻辑结构 就是数据结构在逻辑上的结构,包括集合线性结构树形结构图结构(网状结构)

  • 集合用于表示元素同属一个集合
    在这里插入图片描述

  • 线性结构表示元素在逻辑上按照顺序成线性排列,比如字符串“abc”,a称为b的前驱,c称为b的后继,a作为此线性结构的首个元素,没有前驱,c作为此线性结构的尾元素,没有后继,元素的前驱和后继都是唯一的
    在这里插入图片描述

  • 树形结构用于表示一对多的关系,也用于呈现元素之间的层次关系(从属、并列等),比如族谱
    在这里插入图片描述

  • 图结构用于表示多对多的元素关系,比如好友通讯录,每个人有不同的好友,好友之间可能还有共同好友
    在这里插入图片描述

物理结构也称存储结构,是指数据结构实现时在内存中的存储方式,包括顺序存储链式存储索引存储散列存储

  • 顺序存储要求在逻辑上相邻的元素在物理上也是相邻的
  • 链式存储方式在物理结构上可以是乱序的,通过指针表示元素之间的逻辑关系
  • 根据元素的关键字,直接计算元素在计算机中的存储地址,又称哈希(Hash)存储
  • 小结
    • 顺序存储结构要求各元素在物理上必须是相连的,而非顺序存储结构则可以是离散的
    • 数据的存储结构会影响存储空间分配的效率。比如采用顺序存储插入元素,需要将插入位置之后的元素全部向后移位,而链式结构只需改变指针指向即可
    • 数据的存储结构会影响数据的运算速度,以查找为例,顺序结构可以直接查找第n个元素,而链式结构需要找到首元素然后根据指针向后查找

数据运算是指数据结构的逻辑上的操作,比如增加、删除、排序、查找等。针对不同的数据结构有不同的数据运算,不同的数据结构的运算的操作步骤也各不相同。

本篇完

猜你喜欢

转载自blog.csdn.net/pikachu_12138/article/details/108460155
1.1