简介

数据机构的研究范围

数据结构是数据元素间逻辑关系的表示,是计算机中存储与组织数据的方式。计算机主存储器中特定数据结构的表示称为存储结构,辅助(外)存储器(如硬盘、U盘等)中的存储结构表示称为文件结构。
数据结构的研究点:

  • 需要存储的内存量
  • 处理所需的时间
  • 内存中的数据表示
  • 对数据执行的操作

数据是描述客观事物的符号,可被计算机读取、识别、处理。与数据相关的重要概念有以下几个:

  • 数据元素(data element):组成数据的基本单位,在程序中通常作为一个整体进行考虑和处理,也被称为记录。
  • 数据项(data item):具有独立含义的最小标识单位。例如,一条数据记录可以称为一个数据元素,数据记录的某个字段就是一个数据项。
  • 数据对象(data object):性质相同的数据元素的集合,是数据的一个子集。
  • 数据结构:相互之间存在一种或多种特定关系的数据元素的集合。数据结构包含三方面:数据的逻辑结构、数据的存储结构和数据的运算。
    例:在一张用户表中,一行记录就是一个数据元素,用户的姓名就是一个数据项,年龄条件大于20的用户就是一个数据对象,整个用户表的子集。在实际应用中,可以将数据对象简称为数据。

    数据结构与算法的关系

    而算法是解决问题的分步过程,在计算机科学中,算法可以定义为用于解决问题的一系列明确指令。在计算机中,数据结构是底层,算法是高层,数据结构为算法提供服务。在程序中,数据结构是数据间的有机关系,算法是对数据的操作步骤,程序 = 数据结构 + 算法。

    数据结构分类

    在计算机中,数据结构通常分为两大类:原始数据结构和非原始数据结构。如图所示:
    image.png

    原始数据结构的特点

  • 原始数据结构是计算机的基本结构,可通过机器指令直接操作

  • 原始数据结构在不同的计算机上具有不同的表示形式
  • 整数,浮点数,字符和指针是原始数据结构的示例
  • 这些数据类型在大多数编程语言中都是内置类型
    • 整数(Integer):存储整数的数据类型
    • 浮点数(Float):存储小数的数据类型
    • 字符(Character):存储字符值的数据类型
  • 指针:保存另一个变量的内存地址的变量称为指针

    非原始数据结构的特点

  • 从原始数据结构派生,数据结构更复杂

  • 非原始数据结构强调一组同构或异构数据项的结构
  • 非原始数据类型的示例是数组,列表和文件等
  • 非原始数据类型根据结构进一步分为线性和非线性数据结构
    • 数组(线性):数组是相同数据类型的元素的固定大小的有序序列集合
    • 列表(线性-链表):包含可变数量元素的有序集合称为列表
    • 文件(非线性-树):文件是逻辑相关信息的集合,可以将其视为包含各个字段的大型记录列表

      数据结构总体知识

      知识分类

      image.png

      详细知识点

      参考文章:https://zhuanlan.zhihu.com/p/134649807