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

你可能感兴趣的文章
NHibernate异常:No persister for的解决办法
查看>>
NIFI1.21.0_Mysql到Mysql增量CDC同步中_日期类型_以及null数据同步处理补充---大数据之Nifi工作笔记0057
查看>>
NIFI1.21.0_NIFI和hadoop蹦了_200G集群磁盘又满了_Jps看不到进程了_Unable to write in /tmp. Aborting----大数据之Nifi工作笔记0052
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_增删改数据分发及删除数据实时同步_通过分页解决变更记录过大问题_02----大数据之Nifi工作笔记0054
查看>>
NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_根据binlog实现数据实时delete同步_实际操作04---大数据之Nifi工作笔记0043
查看>>
NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置binlog_使用处理器抓取binlog数据_实际操作01---大数据之Nifi工作笔记0040
查看>>
NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置数据路由_实现数据插入数据到目标数据库_实际操作03---大数据之Nifi工作笔记0042
查看>>
NIFI从MySql中离线读取数据再导入到MySql中_03_来吧用NIFI实现_数据分页获取功能---大数据之Nifi工作笔记0038
查看>>
NIFI从PostGresql中离线读取数据再导入到MySql中_带有数据分页获取功能_不带分页不能用_NIFI资料太少了---大数据之Nifi工作笔记0039
查看>>
NIFI同步MySql数据_到SqlServer_错误_驱动程序无法通过使用安全套接字层(SSL)加密与SQL Server_Navicat连接SqlServer---大数据之Nifi工作笔记0047
查看>>
Nifi同步过程中报错create_time字段找不到_实际目标表和源表中没有这个字段---大数据之Nifi工作笔记0066
查看>>
NIFI大数据进阶_FlowFile拓扑_对FlowFile内容和属性的修改删除添加_介绍和描述_以及实际操作---大数据之Nifi工作笔记0023
查看>>
NIFI大数据进阶_NIFI的模板和组的使用-介绍和实际操作_创建组_嵌套组_模板创建下载_导入---大数据之Nifi工作笔记0022
查看>>
NIFI大数据进阶_NIFI监控的强大功能介绍_处理器面板_进程组面板_summary监控_data_provenance事件源---大数据之Nifi工作笔记0025
查看>>
NIFI大数据进阶_内嵌ZK模式集群1_搭建过程说明---大数据之Nifi工作笔记0015
查看>>
NIFI大数据进阶_外部ZK模式集群1_实际操作搭建NIFI外部ZK模式集群---大数据之Nifi工作笔记0017
查看>>
NIFI大数据进阶_离线同步MySql数据到HDFS_01_实际操作---大数据之Nifi工作笔记0029
查看>>
NIFI大数据进阶_离线同步MySql数据到HDFS_02_实际操作_splitjson处理器_puthdfs处理器_querydatabasetable处理器---大数据之Nifi工作笔记0030
查看>>
NIFI大数据进阶_连接与关系_设置数据流负载均衡_设置背压_设置展现弯曲_介绍以及实际操作---大数据之Nifi工作笔记0027
查看>>
NIFI数据库同步_多表_特定表同时同步_实际操作_MySqlToMysql_可推广到其他数据库_Postgresql_Hbase_SqlServer等----大数据之Nifi工作笔记0053
查看>>