数据结构 [一] 基本概念

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

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

【数据结构、数据对象】

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

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

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

【抽象数据类型 ADT

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

【提示&总结】

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

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

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

相关推荐
Dfreedom.1 小时前
一文掌握Python四大核心数据结构:变量、结构体、类与枚举
开发语言·数据结构·python·变量·数据类型
知花实央l3 小时前
【算法与数据结构】拓扑排序实战(栈+邻接表+环判断,附可运行代码)
数据结构·算法
吃着火锅x唱着歌3 小时前
LeetCode 410.分割数组的最大值
数据结构·算法·leetcode
AI科技星5 小时前
垂直原理:宇宙的沉默法则与万物运动的终极源头
android·服务器·数据结构·数据库·人工智能
QuantumLeap丶6 小时前
《数据结构:从0到1》-05-数组
数据结构·数学
violet-lz6 小时前
数据结构八大排序:希尔排序-原理解析+C语言实现+优化+面试题
数据结构·算法·排序算法
草莓工作室8 小时前
数据结构9:队列
c语言·数据结构·队列
violet-lz8 小时前
数据结构八大排序:堆排序-从二叉树到堆排序实现
数据结构·算法
爱学习的小鱼gogo8 小时前
python 单词搜索(回溯-矩阵-字符串-中等)含源码(二十)
开发语言·数据结构·python·矩阵·字符串·回溯·递归栈
浮灯Foden8 小时前
算法-每日一题(DAY18)多数元素
开发语言·数据结构·c++·算法·leetcode·面试