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

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

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

存储结构

逻辑结构

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

  1. 集合结构

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

  2. 线性结构

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

  3. 树形结构

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

  4. 图形结构

    数据元素是多对多的关系

物理结构

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

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

  1. 顺序存储结构

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

  2. 链式存储结构

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

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

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

数据类型

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

定义

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

抽象数据类型

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

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

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


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

相关推荐
2301_807997381 小时前
代码随想录-day26
数据结构·c++·算法·leetcode
敲代码的嘎仔1 小时前
JavaWeb零基础学习Day6——JDBC
java·开发语言·sql·学习·spring·单元测试·maven
TL滕1 小时前
从0开始学算法——第一天(认识算法)
数据结构·笔记·学习·算法
民乐团扒谱机2 小时前
实验室安全教育与管理平台学习记录(九)消防安全
学习·安全·实验室·常识·火灾·防护·救护
zhangrelay2 小时前
如何使用AI快速编程实现标注ROS2中sensor_msgs/msg/Image图像色彩webots2025a
人工智能·笔记·opencv·学习·计算机视觉·机器人视觉
universe_013 小时前
前端学习css
前端·css·学习
海边夕阳20063 小时前
【每天一个AI小知识】:什么是自监督学习?
人工智能·经验分享·学习
weixin_514221854 小时前
FDTD代码学习-1
学习·算法·lumerical·fdtd
兔兔爱学习兔兔爱学习4 小时前
Spring Al学习9:模型上下文协议(MCP)
java·学习·spring
武子康4 小时前
AI研究-118 具身智能 Mobile-ALOHA 解读:移动+双臂模仿学习的开源方案(含论文/代码/套件链接)
人工智能·深度学习·学习·机器学习·ai·开源·模仿学习