数据结构 [一] 基本概念

【数据项>数据元素>数据】

  • 数据:描述事物的符号。计算机中用二进制0和1表示。
  • 数据元素:数据的基本单位,每个数据元素包含若干个数据项。
  • 数据项:构成数据元素的最小单位。

【数据结构、数据对象】

  • 数据结构:存在特定关系的数据元素集合(强调元素间关系)
  • 数据对象:相同性质数据元素的集合(不强调关系)

【数据结构三要素】讨论一种数据结构时,要关注的三个方面

  1. 逻辑结构
    (描述数据元素之间的逻辑关系,是数据结构的抽象层面。)
    (它与数据的存储无关,是独立于计算机的。)
    1. 线性结构:一对一关系(如烤串、排队队列)
    2. 集合结构:元素仅同属一个集合(如烤盘上食物)
    3. 树形结构:一对多关系(如目录结构、思维导图)
    4. 图状结构:多对多关系(如微信好友关系网)
  2. 物理结构(存储结构)
    (
    数据在计算机中的实际存储方式,影响存储空间的分配的方便程度+对数据运算的速度。)
    (
    它是用计算机语言实现的逻辑结构,包括数据元素的值+关系的表示。)
    1. 顺序存储 : 数据元素在内存中连续存放。(逻辑上相邻,物理位置也相邻)
    2. 链式存储 : 通过指针链接数据元素。(物理位置可以随意放)
    3. 索引存储 : 建立索引表来定位数据元素。
    4. 散列存储 : 通过哈希函数确定存储位置。
  3. 数据的运算( 包括运算的定义+实现**)**
    1. 运算的定义 针对逻辑结构,指出运算的功能。
    2. 运算的实现 针对存储结构,指出运算的具体操作步骤。

【抽象数据类型 ADT

定义一个ADT== 就是定义了一个数据结构 == 定义了数据的逻辑结构、数据的运算。

【提示&总结】

1 学习任何一种数据结构,都要关注它的三要素(逻辑结构+物理结构+数据的运算)。

2 数据结构这门课,看重的是数据元素之间的关系+操作。

3 先要弄清楚数据的逻辑结构,再去确定合适的存储结构,才能实现数据结构。

相关推荐
奋发向前wcx10 小时前
P2590 树的统计 题目解析
数据结构·算法·深度优先
额鹅恶饿呃12 小时前
C语言中的数据结构和变量
c语言·数据结构·算法
万法若空13 小时前
【数据结构-哈希表】哈希表原理
数据结构·算法·散列表
tachibana214 小时前
hot100 翻转二叉树(226)
java·数据结构·算法·leetcode
兰令水14 小时前
leecodecode【面试150】【2026.7.9打卡-java版本】
java·数据结构·leetcode·面试·职场和发展
A.零点16 小时前
期末复习,408考研数据结构:第一章绪论完整知识梳理与真题深度解读
c语言·数据结构·笔记·考研
阿文的代码库17 小时前
经典算法题剖析:按奇偶排序数组
数据结构·算法
玛卡巴卡ldf20 小时前
【LeetCode 手撕算法】(细节知识点总结)
java·数据结构·算法·leetcode·力扣
Yang_jie_0321 小时前
笔记:数据结构(链队列的相关判断条件)
数据结构·笔记
zmzb01031 天前
C++课后习题训练记录Day154
数据结构·c++·算法