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

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

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

存储结构

逻辑结构

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

  1. 集合结构

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

  2. 线性结构

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

  3. 树形结构

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

  4. 图形结构

    数据元素是多对多的关系

物理结构

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

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

  1. 顺序存储结构

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

  2. 链式存储结构

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

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

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

数据类型

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

定义

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

抽象数据类型

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

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

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


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

相关推荐
吃好睡好便好11 小时前
创建魔方矩阵和单位矩阵
开发语言·人工智能·学习·线性代数·matlab·矩阵
星夜夏空9911 小时前
STM32单片机学习(21) —— I2C通信
stm32·单片机·学习
小娄~~11 小时前
C语言卷子错题集
c语言·开发语言·数据结构
searchforAI13 小时前
B站视频转笔记用哪个工具?2026年四款AI笔记工具对比实测
人工智能·经验分享·笔记·gpt·学习·视频总结·ai笔记
过期动态13 小时前
【LeetCode 热题 100】盛最多水的容器
java·数据结构·spring boot·算法·leetcode·spring cloud·职场和发展
爱上好庆祝14 小时前
学习JS第十一天(JS的进阶)
前端·javascript·学习
05候补工程师14 小时前
【408考研·数据结构专题】二叉树、树与森林、线索树及哈夫曼树核心考点与秒杀技巧深度总结
数据结构·经验分享·笔记·考研·算法
yeiweilan14 小时前
AI应用学习
学习
吃好睡好便好14 小时前
矩阵的加减运算
开发语言·人工智能·学习·线性代数·算法·matlab·矩阵
Mister西泽14 小时前
C++ Primer Plus 第六版 编程练习题及详细答案
开发语言·c++·学习·visual studio