数据结构之线性表(一)

113 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

@TOC

1.0 算法的基本概念

算法 + 数据结构 = 程序 抽象数据类型 = 数据模型 + 定义在该模型上的一组操作 ADT(Abstract Data Type)= DS(Data Structrue) + OP(Operation)

一个数据类型的实现分为三个阶段: 1。 抽象数据类型(抽象的)定义阶段,比如:整数 2。虚拟数据类型(虚拟的)表示阶段,比如:C语言的整数 3。物理数据类型(物理的)实现阶段,比如:机器语言

1.1 数据的逻辑结构

1.1.1 根据数据元素之间的关系,有四类基本的逻辑结构:

  • 线性结构
  • 树形结构
  • 图状结构
  • 集合结构

(1)图书管理(线性结构) 在这里插入图片描述

(2)人机对弈(树形结构)(上层的结点可以和下层多个结点相邻接,但下层结点只能和上层的一个结点相邻接)

在这里插入图片描述 在这里插入图片描述

(3)交通信号灯(图状结构)(任何两个结点都可以相邻接) 在这里插入图片描述

(4)集合结构(任意两个结点之间都没有邻接关系) 在这里插入图片描述

1.2 数据的存储结构

1.2.1 表示数据元素之间的关联方式主要有顺序存储方式和链式存储方式。

(1) 顺序存储方式 是指所有存储结点存放在一个连续的存储区里。 利用结点在存储器中的相对位置来表示数据元素之间的逻辑关系。