【数据结构】数据结构概念 ( 数据结构中常见的存储结构 | 数据结构中常见的逻辑结构 )





一、数据结构概念



数据结构计算机内存组织 和 存储 数据 的方式 , 有以下两部分组成 :

  • 逻辑结构 : 数据的存放形式 ;
  • 操作 : 数据如何操作 , 如 : 排序 , 查询 , 删除 , 增加 , 修改 ;

数据结构 是为了 高效访问 内存中的数据 ;


数据结构 定义了 内存中的 数据元素 之间的关系 以及 对这些数据元素的操作 ;





二、数据结构中常见的存储结构



常见的数据结构包括 : 数组、链表、栈、队列、树、图等。

  • 数组(Array): 线性数据结构存储 相同数据类型的元素,通过索引下标访问数据中的元素。
  • 表(Linked List): 线性数据结构,由列节点组成,每个节点包含 数据 和 指向下一个节点的指针。
  • 堆栈(Stack): 后进先出(LIFO)的数据结构,只能在栈的一端进行插入和删除操作。
  • 队列(Queue): 先进先出(FIFO)的数据结构,允许在一端插入元素,在另一端删除元素。
  • 树(Tree): 非线性数据结构,由节点和边组成,每个节点可以有零个或多个子节点。
  • 图(Graph): 非线性数据结构,由节点和边组成,节点之间的关系可以是任意的。
  • 堆(Heap): 特殊的树形数据结构,具有特定的堆属性,常用于实现优先队列等应用。
  • 散列表(Hash Table): 根据键(Key)直接访问值(Value)的数据结构,通过散列函数将键映射到存储位置。




二、数据结构中常见的逻辑结构



数据结构 的 逻辑结构 类型 :

  • 集合结构 : Set Structure ,
    • 集合结构中的 数据元素之间没有任何特定的关系,
    • 每个元素都是独立的,没有顺序和层次关系。
    • 集合结构中的元素是无序的,且不允许重复。
  • 线性结构 : Linear Structure ,
    • 线性结构中的 数据元素之间存在一对一的关系,元素之间只有前后两个相邻关系。
    • 线性结构可以分为两种基本形式: 线性表 和 线性链表。
      • 线性表 中的元素按照顺序存放,可以通过索引访问;
      • 线性链表 中的元素通过指针连接,每个元素包含数据和指向下一个元素的指针。
  • 非线性结构 : Nonlinear Structure ,
    • 非线性结构中的 数据元素之间存在多对多的关系,元素之间的连接关系不仅仅是前后关系。
    • 常见的非线性结构有树和图 :
      • 树形结构 : 树结构中的数据元素按照层次关系组织,每个元素可以有多个子节点;
      • 图形结构 : 图结构中的数据元素之间的关系可以是任意的,包括多对多的连接关系。
  • 线性结构和非线性结构的组合: 在实际应用中,线性结构和非线性结构可以组合使用,形成更复杂的数据结构。例如,树可以用来表示文件系统的目录结构,而每个目录下又可以使用线性表来存储文件。

猜你喜欢

转载自blog.csdn.net/han1202012/article/details/130715915