博客
关于我
数据结构与算法绪论
阅读量:536 次
发布时间:2019-03-08

本文共 909 字,大约阅读时间需要 3 分钟。

数据结构与算法入门

数据结构

数据结构的基本概念

数据是信息的载体,是描述事务客观属性的数、字符及所有能输入到计算机中并被计算机程序识别和处理的符号的集合。例如,数学计算中的整数和实数,文本编辑中的字符串,多媒体程序处理的图形、图像、声音及动画等。

数据对象:是性质相同的数据元素的集合,是数据的一个子集。

数据元素:数据的基本单位,通常作为一个整体考虑和处理。

数据项:构成数据元素不可分割的最小部分。

数据对象、数据元素、数据项的关系

数据结构是相互之间存在一种或者多种特定关系的数据元素的集合。例如,学号01排在学号02的前面,这种相互关系可以称为结构。

数据类型

原子类型:不可再分的值的集合和定义在集合上的操作。例如:int、char、float等。

结构类型:结构(多个原子类型值的组合)的集合和定义在集合上的操作。例如:list、map、set等。

抽象数据类型(ADT):一般是指由用户定义的,表示应用问题的数学模型,以及定义在这个模型上的一组操作的总称。其三个要素为:数据对象、数据对象上的关系的集合以及数据对象的基本操作的集合。

数据结构的三要素的详细解释

数据结构的三要素是逻辑结构、物理结构以及数据的运算。

逻辑结构

逻辑结构是指数据元素之间的一种抽象关系,是从逻辑上描述数据,独立于计算机与存储结构。常见的逻辑结构类型包括:

  • 线性结构:如线性表、栈、队列,表示A排在B的前面,B排在C的前面等。

  • 非线性结构

    • 集合:所有数据在同一个集合之内无其他任何关系。
    • 树形结构:树状结构是一对多的关系,A分别与B、C、D等有关系。
    • 图状结构:多对多的关系,图状结构也称为网状结构。

物理结构

物理结构是指数据在计算机中的实际存储形式。常见的物理存储结构包括:

  • 顺序存储:逻辑上相邻的数据在物理存储上也相邻。
  • 链式存储:逻辑上相邻的数据在物理存储上可能不相邻,通过指针连接。
  • 索引存储:存储索引表来快速定位数据的位置。
  • 散列存储:通过关键字的函数直接得到存储位置。

数据的运算

运算包括定义在数据结构上的基本操作。例如,访问、插入、删除、查找等操作的实现。运算的定义针对逻辑结构,实现针对存储结构。

算法

转载地址:http://frsiz.baihongyu.com/

你可能感兴趣的文章
OpenCV与AI深度学习 | 实战 | OpenCV实现扫描文本矫正应用与实现详解(附源码)
查看>>
OpenCV与AI深度学习 | 实战 | YOLO11自定义数据集训练实现缺陷检测 (标注+训练+预测 保姆级教程)
查看>>
OpenCV与AI深度学习 | 实战 | YOLOv10模型微调检测肾结石并提高准确率
查看>>
OpenCV与AI深度学习 | 实战 | 使用OpenCV和Streamlit搭建虚拟化妆应用程序(附源码)
查看>>
OpenCV与AI深度学习 | 实战 | 使用OpenCV确定对象的方向(附源码)
查看>>
OpenCV与AI深度学习 | 实战 | 使用YOLOv8 Pose实现瑜伽姿势识别
查看>>
OpenCV与AI深度学习 | 实战 | 使用YoloV8实例分割识别猪的姿态(含数据集)
查看>>
OpenCV与AI深度学习 | 实战 | 使用姿态估计算法构建简单的健身训练辅助应用程序
查看>>
OpenCV与AI深度学习 | 实战 | 基于OpenCV和K-Means聚类实现颜色分割(步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战 | 基于YoloV5和Mask RCNN实现汽车表面划痕检测(步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战 | 基于YOLOv9+SAM实现动态目标检测和分割(步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战 | 基于YOLOv9和OpenCV实现车辆跟踪计数(步骤 + 源码)
查看>>
OpenCV与AI深度学习 | 实战 | 文本图片去水印--同时保持文本原始色彩(附源码)
查看>>
OpenCV与AI深度学习 | 实战 | 通过微调SegFormer改进车道检测效果(数据集 + 源码)
查看>>
OpenCV与AI深度学习 | 实战—使用YOLOv8图像分割实现路面坑洞检测(步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战篇——基于YOLOv8和OpenCV实现车速检测(详细步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战|OpenCV实时弯道检测(详细步骤+源码)
查看>>
OpenCV与AI深度学习 | 实用技巧 | 使用OpenCV进行模糊检测
查看>>
OpenCV与AI深度学习 | 实践教程|旋转目标检测模型-TensorRT 部署(C++)
查看>>
OpenCV与AI深度学习 | 工业缺陷检测中数据标注需要注意的几个事项
查看>>