介绍

数据结构的基本信息

数据:是客观事物的符号表示,是所有能输入到计算机中并被计算机程序处理的符号的总称。如:字符串,实数整数。。。。
数据元素:是数据的基本单位,在计算机中通常被作为一个整体进行考虑与处理。如组成通讯录的每一个人的信息,数据元素可以完整的描述一个对象。
数据项:是组成数据元素的,具有独立意义的,不可分割的最小单位(也就是说,数据元素由诺干个数据项组成)。如,通讯录中每一个学生都是数据元素,而,描述学生的姓名,性别,年龄等,都是学生的数据项。
数据对象:性质相同的数据元素的集合,是数据的一个子集。只要是一个集合内的数据元素的性质一样,该集合都可以是一个数据对象。如,整数集和,是整数的数据对象。

数据结构

是什么

数据结构:是相互之间存在一种或多种特定关系的数据元素的集合(或者说,数据结构是带“一定结构”的数据元素的集合,“结构”就是指数据元素之间存在的关系)

数据结构
包括逻辑结构存储结构

逻辑结构

逻辑结构是从逻辑关系上描述数据,与数据的存储无关,是独立于计算机的(是认为想象出来的的一种数据模型)

数据的逻辑结构有两大要素1,数据元素;2,关系
数据元素是指可被计算机看为一个整体进行处理与考虑。
关系是指数据元素之间存在的逻辑关系

通常有以下4类基本结构
1,集合结构
数据元素除了同属同一集合之外,再无其他关系(每个数据元素具有同一性质

例如:集合结构应用时,可以每个班为一个集合,每个班中的学生则是数据元素,各个班的学生都是人,但每个学生的数据项各不相同。而各个班相比则更是两个集合。
2,线性结构
数据元素之间只存在一对一的关系。

例如:统计学生入学信息是按照其入学时间进行排列储存。
要想找到某个学生的信息,只能根据相互之间的时间关系,去遍历,去二分,去查找。
3,树结构
数据元素之间存在一对多的关系。

例如:古代封建制度里的皇帝管理六部,六部分管各个衙门机构。。。。
4,图结构或网结构
数据元素之间处在多对多的关系。

要想找到某个元素可以有多个路径或方法可以达到目的。

逻辑结构又分为线性结构和非线性结构,以上4种基本结构都属于非线性结构
看以下图表,增强记忆,理清思路。

存储结构

数据对象在计算机中的存储为数据的储存结构,也是物理结构,要映射到计算机中的物理内存中。将数据对象存储到计算机中要储存各数据元素,又要储存元素之间的逻辑关系
在计算机中有两种储存方式:顺序储存链式储存

顺序储存结构
借助元素在存储器的相对位置来表示数据元素之间的逻辑关系。
即相当于,在内存中依次按地址储存。
例如:数组

链式储存结构
所有元素依次存放在一片连续的存储空间中,而链式存储结构无需占用一整块存储空间,但要利用指针来指明数据元素之间的关系。例如:链表。

抽象数据类型

根据实际问题,由用户定义的,解决应用问题的数据模型,以及在这个模型是的一系列操作。
例如:用结构体创建的结构体类型。
如有错误,烦请大佬指正
我目前水平不够,暂时未对抽象数据类型有过多认知,以后会补上。

数据结构系列-初识数据结构相关推荐

  1. 【数据结构】初识数据结构,十分钟带你玩转算法复杂度

    目录

  2. redis 系列7 数据结构之跳跃表

    redis 系列7 数据结构之跳跃表 原文:redis 系列7 数据结构之跳跃表 一.概述 跳跃表(skiplist)是一种有序数据结构,它通过在每个节点中维持多个指向其他节点的指针,从而达到快速访问 ...

  3. 数据结构——初识数据结构

    数据结构(计算机408考研科目) 首先我们提出一个问题:数据结构是在学习什么? 带着这个疑问我们来观察一下我们身边的世界. 从一日三餐,吃穿住行来看: 1.我们有时不想做饭时,我们可以打开手机去点外卖 ...

  4. 【Python数据结构系列】❤️《栈(顺序栈与链栈)》——❤️知识点讲解+代码实现

    灵魂拷问:为什么要学数据结构? 数据结构,直白地理解,就是研究数据的存储方式.数据存储只有一个目的,即为了方便后期对数据的再利用.因此,数据在计算机存储空间的存放,决不是胡乱的,这就要求我们选择一种好 ...

  5. 卜若的代码笔记-数据结构系列-第十二章:栈三.链栈

    1.太简单了,不介绍了,直接贴代码,有问题请看10,11,章 //测试代码public static void main(String[] args) throws IOException {Link ...

  6. 数据结构—笔记整理—初识数据结构

    学习之路,长路漫漫,写学习笔记的过程就是把知识讲给自己听的过程. 目录 数据结构初定义 常用数据结构 这 8 种数据结构有什么区别呢? ①.数组 ②.链表 ③.栈 ④.队列 ⑤.树 ⑥.堆 ⑦.图 ⑧ ...

  7. <初识数据结构+算法实现>数据结构(C语言版)

    新晓本已悦人心,故知更加理解深! 目录 前言: ●本篇博文基于<数据结构>(C语言版)严蔚敏教授.吴伟民教授.李冬梅教授编著的教材知识及框架主线,以及参考借阅其他相关资料,结合作者的学习所 ...

  8. 【数据结构】用数据结构给水浒做了个英雄榜

    前言 ★ 这里是小冷的博客 ✓ 优质技术好文见专栏 个人公众号,分享一些技术上的文章,以及遇到的坑 当前系列:数据结构系列 源代码 git 仓库 ' 数据结构代码地址 代码Git 仓库地址 链表 链表 ...

  9. python数据结构推荐书-关于数据结构,有哪些不错的参考书推荐?

    学习编程,数据结构是你必须要掌握的基础知识,那么数据结构到底是什么呢? 其实数据结构就是用来描述计算机里存储数据的一种数学模型,因为计算机里要存储很多乱七八糟的数据,所以也需要不同的数据结构来描述. ...

最新文章

  1. kruskai算法c语言实现,并查集 - xiaobaoqiu Blog
  2. 作为SEO老人不轻易建议客户进行动态网页优化设置
  3. 2020-11-26((《深入理解计算机系统》多级页表详解)补充)
  4. nssl1296-猫咪的进化【dp】
  5. 读《白帽子讲Web安全》之客户端脚本安全(一)
  6. 冠军奖金50万,2020腾讯广告算法大赛广发“英雄帖”
  7. Aspectj切入点语法定义
  8. 一台设备驱动万物:苹果和三星即将推陈出新
  9. LODOP打印控件简单示例
  10. 阮一峰ES6学习笔记(1)
  11. HTML 标签参考手册:按字母顺序排列 HTML 标签
  12. 用上这个神器后,广告从此去无忧!(全平台免费支持,无需安装任何客户端软件)...
  13. 身份认证协议攻击:黑客不希望你了解的事情
  14. 如何在计算机桌面恢复我的电脑,桌面上我的电脑图标不见了怎么恢复?桌面计算机图标不见了的3个解决方法...
  15. 什么是稀疏数组?稀疏数组详解
  16. 开发你自己的Android 授权管理器 (AccountManager的使用以及应用场景)
  17. ESP32模数转换 ADC(光感检测)
  18. python 鸡尾酒疗法
  19. 计算机考研考线代嘛,计算机考研大纲
  20. smart200PLC TCP通讯

热门文章

  1. 微信消息订阅功能开发流程
  2. 编写程序,如果输入的是大写字母,则输出对应的小写字母,如果输入的是小写字母,则输出对应的大写字母;如果输入的是数字,原样输出;按回车结束
  3. RDF查询语言SPARQL
  4. 三维空间曲线参数方程曲率半径公式
  5. CSS中如何快速生成雪碧图
  6. Chrome浏览器和Edge浏览器永久开启始终允许Flash插件
  7. 基于miu小波变换的人体步态数据检测和识别算法matlab仿真
  8. WmiPrvSe.exe 的 cpu 占用
  9. 0-9数字CNN识别项目
  10. 数据可视化 - 柱状图 - xy轴自定义名称