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

你可能感兴趣的文章
npm start运行了什么
查看>>
npm WARN deprecated core-js@2.6.12 core-js@<3.3 is no longer maintained and not recommended for usa
查看>>
npm 下载依赖慢的解决方案(亲测有效)
查看>>
npm 安装依赖过程中报错:Error: Can‘t find Python executable “python“, you can set the PYTHON env variable
查看>>
npm.taobao.org 淘宝 npm 镜像证书过期?这样解决!
查看>>
npm—小记
查看>>
npm上传自己的项目
查看>>
npm介绍以及常用命令
查看>>
NPM使用前设置和升级
查看>>
npm入门,这篇就够了
查看>>
npm切换到淘宝源
查看>>
npm切换源淘宝源的两种方法
查看>>
npm前端包管理工具简介---npm工作笔记001
查看>>
npm包管理深度探索:从基础到进阶全面教程!
查看>>
npm升级以及使用淘宝npm镜像
查看>>
npm发布包--所遇到的问题
查看>>
npm发布自己的组件UI包(详细步骤,图文并茂)
查看>>
npm和package.json那些不为常人所知的小秘密
查看>>
npm和yarn清理缓存命令
查看>>
npm和yarn的使用对比
查看>>