0.基本概念——数据结构学习

数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关问题的学科。

  • 数据:描述客观事物的符号,是计算机可以操作的对象,是能被计算机识别,并输出给计算机处理的符号集合。
  • 数据元素:是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理,也被称为记录。
  • 数据项:一个数据元素可以由若干个数据项组成------不可分割的最小单位。
  • 数据对象:性质相同的数据元素的集合,是数据的子集
  • 结构:不同数据元素之间不是独立的,而是存在特定的关系
  • 数据结构:相互之间存在一种或多种特定关系的数据元素的集合。

存储结构

逻辑结构

数据对象中数据元素之间的相互关系。

  1. 集合结构

    除了同属于一个集合外,它们之间没有任何关系

  2. 线性结构

    数据元素之间是一对一的关系

  3. 树形结构

    数据元素之间存在一种一对多的层次关系

  4. 图形结构

    数据元素是多对多的关系

物理结构

数据的逻辑结构在计算机中的存储形式。

数据的存储结构正确反应数据元素之间的逻辑关系!如何存储数据元素之间的逻辑关系,是实现物理结构的重点和难点。

  1. 顺序存储结构

    把数据元素存放在地址连续的存储单元里,其数据间的逻辑关系和物理关系是一致的。

  2. 链式存储结构

    把数据元素存放在任意的存储单元里,这组存储单元可以是连续的,也可以不是连续的。

数据元素的存储关系无法反映其逻辑关系,因此需要一个指针存放数据元素的地址

  • 逻辑结构面向问题
  • 物理结构面向计算机

数据类型

一组性质相同的值的集合及定义在此集合上的一些操作的总称。

定义

按照值的不同进行划分,类型就用来说明变量或表达式的取值范围和所能进行的操作。

抽象数据类型

Abstract Data Type,简称ADT:一个数学模型及定义在该模型上的一组操作。

抽象数据类型的定义仅取决于它的一组逻辑特性,与其在计算机内部如何表示和实现无关。

ADT体现了程序设计中问题分解、抽象和信息隐藏的特性。


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

相关推荐
指针战神14 分钟前
synchronized简易版Redis版跳表实现(注释干货)
数据结构
MartinYeung514 分钟前
[论文学习]基于梯度迭代上下文优化的 LLM 隐私越狱攻击框架
学习·区块链
handler011 小时前
【算法】并查集(普通/扩展/带权)模板与例题
数据结构·c++·笔记·算法·c·图论·查并集
MartinYeung51 小时前
[论文学习]大型语言模型中 PII 洩漏的系统性调查
学习
.千余2 小时前
【C++】C++手写Vector容器:从底层源码模拟实现
开发语言·c++·经验分享·笔记·学习
nashane2 小时前
HarmonyOS 6学习:句柄泄漏(Fd Leak)从“崩溃现场”到“代码行”的精准狙击指南
学习·华为·音视频·harmonyos
zhangrelay3 小时前
后智能时代智能体推演预测娱乐文-节选-
笔记·学习·娱乐
糖果店的幽灵3 小时前
Pandas DataFrame 数据结构详解
数据结构·pandas
Upsy-Daisy4 小时前
Hermes Agent 学习笔记 01:一个会记忆、会学习、能长期运行的 AI Agent
人工智能·笔记·学习
我命由我123454 小时前
工程中安全帽颜色含义
运维·经验分享·学习·职场和发展·求职招聘·职场发展·学习方法