数据结构的基本概念

1 数据

数据是计算机程序加工的原料

2 数据元素

数据元素是数据的基本单位,通常作为一个整体进行考虑和处理

3 数据对象

数据对象是具有相同性质的数据元素的集合

4 数据类型

  1. 原子类型:其值不可再分的数据类型
  2. 结构类型:其值可以再分解为若干成分的数据类型
  3. 抽象数据类型:一个数学模型定义在该数学模型上的一组操作

5 数据结构

数据结构是相互之间存在一种或者多种特定关系的数据元素的集合。

数据结构包括三方面内容:逻辑结构,存储结构和数据运算

5.1 逻辑结构

逻辑结构是指数据元素之间的逻辑关系,即从逻辑关系上描述数据。逻辑结构分为线性结构非线性结构

数据结构的逻辑结构分类如图所示:

5.2 存储结构

存储结构是指数据结构在计算机中的表示(也称为映射),也称物理结构 ,它包含数据元素的表示和关系的表示。

主要有顺序存储,链式存储,索引存储和散列存储

  • 顺序存储:把逻辑上相邻的元素存储在物理上也相邻的存储单元中,元素之间的关系由存储单元的邻接关系来体现。
  • 链式存储:不要求逻辑上相邻的元素在物理位置上也相邻,借助指示元素存储地址的指针来表示元素之间的逻辑关系。
  • 索引存储:在存储元素信息的同时,还建立附加索引表。
  • 散列存储:根据元素的关键字直接计算出该元素的存储地址。

5.3 数据的运算

施加在数据上的运算包括运算的定义和实现。运算的定义是指针对逻辑结构的,指出运算的功能;运算的实现是指针对存储结构的,指出元素的具体操作。

相关推荐
大袁同学2 小时前
【哈希hash】:程序的“魔法索引”,实现数据瞬移
数据结构·c++·算法·哈希算法·散列表
@卞4 小时前
ST 表相关练习题
数据结构·c++·算法
Ace_31750887764 小时前
拼多多关键字搜索接口逆向:从 WebSocket 实时推送解析到商品数据结构化重建
数据结构·websocket·网络协议
天选之女wow5 小时前
【Hard——Day4】25.K 个一组翻转链表
数据结构·算法·leetcode·链表
曾经的三心草5 小时前
Java数据结构-List-栈-队列-二叉树-堆
java·数据结构·list
一直在努力的小宁7 小时前
《代码随想录-精华内容提取》07 二叉树
数据结构·算法·链表·面试
多彩电脑8 小时前
死循环逻辑检测
数据结构·python·算法·动态规划
一叶之秋141210 小时前
从零开始:打造属于你的链式二叉树
数据结构·算法
yuuki23323313 小时前
【数据结构】栈
c语言·数据结构·后端
苏小瀚21 小时前
算法---FloodFill算法和记忆化搜索算法
数据结构·算法·leetcode