数据结构 [一] 基本概念

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

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

【数据结构、数据对象】

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

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

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

【抽象数据类型 ADT

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

【提示&总结】

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

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

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

相关推荐
闪电麦坤951 小时前
数据结构:泰勒展开式:霍纳法则(Horner‘s Rule)
数据结构·算法
码农开荒路5 小时前
Redis底层数据结构之字典(Dict)
java·数据结构·数据库·redis
lyh13447 小时前
【Fiddler抓取手机数据包】
数据结构
int型码农8 小时前
数据结构第八章(二)-交换排序
c语言·数据结构·算法·排序算法
落羽的落羽11 小时前
【C++】二叉搜索树
开发语言·数据结构·c++·学习
编程绿豆侠11 小时前
力扣HOT100之二分查找: 34. 在排序数组中查找元素的第一个和最后一个位置
数据结构·算法·leetcode
Shan120511 小时前
找到每一个单词+模拟的思路和算法
数据结构·算法
纳于大麓11 小时前
数据结构-栈
数据结构
半桔13 小时前
【算法深练】分组循环:“分”出条理,化繁为简
数据结构·c++·算法·leetcode·面试·职场和发展
@Mr_LiuYang13 小时前
Mermaid 绘图--以企业权限视图为例
数据结构·mermaid·结构图·层次权限·权限关系图