博客
关于我
数据结构与算法绪论
阅读量: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/

你可能感兴趣的文章
opencv10-形态学操作
查看>>
opencv11-提取水平直线和垂直直线
查看>>
opencv12-图像金字塔
查看>>
opencv13-基本阈值操作
查看>>
opencv14-自定义线性滤波
查看>>
opencv15-边缘处理
查看>>
opencv16-Sobel算子
查看>>
opencv17-laplance算子
查看>>
opencv18-canny检测算法
查看>>
opencv19-霍夫直线变化
查看>>
opencv2-矩阵掩膜操作
查看>>
opencv20-霍夫圆检测
查看>>
opencv21-像素重映射
查看>>
opencv22-直方图均衡化
查看>>
opencv23-直方图计算
查看>>
opencv24-直方图比较
查看>>
opencv25-直方图反向投影
查看>>
opencv26-模板匹配
查看>>
opencv27-轮廓发现
查看>>
opencv28-凸包
查看>>