数据结构的基本概念

1 数据

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

2 数据元素

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

3 数据对象

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

4 数据类型

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

5 数据结构

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

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

5.1 逻辑结构

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

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

5.2 存储结构

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

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

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

5.3 数据的运算

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

相关推荐
琢磨先生David3 天前
Day1:基础入门·两数之和(LeetCode 1)
数据结构·算法·leetcode
qq_454245033 天前
基于组件与行为的树状节点系统
数据结构·c#
超级大福宝3 天前
N皇后问题:经典回溯算法的一些分析
数据结构·c++·算法·leetcode
岛雨QA3 天前
常用十种算法「Java数据结构与算法学习笔记13」
数据结构·算法
weiabc3 天前
printf(“%lf“, ys) 和 cout << ys 输出的浮点数格式存在细微差异
数据结构·c++·算法
wefg13 天前
【算法】单调栈和单调队列
数据结构·算法
岛雨QA3 天前
图「Java数据结构与算法学习笔记12」
数据结构·算法
czxyvX3 天前
020-C++之unordered容器
数据结构·c++
岛雨QA3 天前
多路查找树「Java数据结构与算法学习笔记11」
数据结构·算法
AKA__Zas3 天前
初识基本排序
java·数据结构·学习方法·排序