数据结构的基本概念

1 数据

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

2 数据元素

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

3 数据对象

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

4 数据类型

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

5 数据结构

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

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

5.1 逻辑结构

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

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

5.2 存储结构

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

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

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

5.3 数据的运算

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

相关推荐
cui_ruicheng21 分钟前
C++数据结构进阶:哈希表实现
数据结构·c++·算法·哈希算法·散列表
光电笑映24 分钟前
高阶数据结构之红黑树详解
数据结构
逆境不可逃1 小时前
LeetCode 热题 100 之 35. 搜索插入位置 74. 搜索二维矩阵 34. 在排序数组中查找元素的第一个和最后一个位置
数据结构·算法·leetcode
浅念-1 小时前
C ++ 智能指针
c语言·开发语言·数据结构·c++·经验分享·笔记·算法
不染尘.1 小时前
最小生成树算法
开发语言·数据结构·c++·算法·图论
Klong.k1 小时前
判断是不是素数题目
数据结构·算法
Morwit2 小时前
*【力扣hot100】 215. 数组中的第K个最大元素
数据结构·c++·算法·leetcode·职场和发展
ab1515172 小时前
3.20二刷基础121、127,完成进阶61、62
数据结构·算法·排序算法
I_LPL2 小时前
day58 代码随想录算法训练营 图论专题11
数据结构·算法·图论
小比特_蓝光2 小时前
算法篇1-----双指针
数据结构·算法