1.今天做题遇到这样一道题目:

那我们下面来具体讲一下其中的关系

2.什么是数据结构:

数据结构分为:逻辑结构、存储结构。

A.逻辑结构分为:集合、线性结构、树形结构、图形结构。
    --线性表、栈、队列、树、图等逻辑结构。

    --其中线性表、栈、队列为线性结构,树和图都是非线性结构。

B.物理存储结构分为:顺序存储结构、链式存储结构,索引结构,哈希结构

3.逻辑结构可以用二元组来表示:

    --二元组表示形式: DS = ( D, S )   【Data Structure】
    --其中 D 是数据元素的集合; S 是 D 中数据元素之间的关系集合

4.二元组满足以下关系:

二元组形式为:DS = (D, S),则:

第一:如果 D != null,而S == null,则该数据结构为集合结构。

第二:如果 D = {01, 02, 03, 04, 05},S = {<02,04>, <03,05>, <05,02>, <01,03>},则该数据结构是线性结构。
在这些数据元素中有一个可以被称为“第一个”的数据元素;还有一个可以被称为“最后一个”的数据元素;除第一个元素以外每个数据元素有且仅有一个直接前驱元素,除最后一个元素以外每个数据元素有且仅有一个直接后续元素。这种数据结构的特点是数据元素之间是 1对 1 的联系,即线性关系。

第三:
D = {01, 02, 03, 04, 05, 06}
S = {<01,02>, <01,03>, <02,04>, <02,05>, <03,06>}
除了一个数据元素(元素 01)以外每个数据元素有且仅有一个直接前驱元素,但是可以有多个直接后续元素。这种数据结构的特点是数据元素之间是 1 对 N 的联系,即树结构。

第四: 

D = {01, 02, 03, 04, 05}
S = {<01,02>, <01,05>, <02,01>, <02,03>, <02,04>, <03,02>,<04,02>, <04,05>, <05,01>, <05,04>}:
每个数据元素可以有多个直接前驱元素,也可以有多个直接后续元素。这种数据结构的特点是数据元素之间是 M 对 N 的联系,即图结构。

5.四种逻辑结构的图解如下所示:

数据结构当中的二元组详解相关推荐

  1. 数据结构与算法之时间复杂度详解

    数据结构与算法之时间复杂度详解 目录 排序算法的介绍和分类 算法的时间复杂度概念 常见的时间复杂度解析 平均时间复杂度和最坏时间复杂度 空间复杂度介绍 1. 排序算法的介绍和分类 排序算法的介绍 排序 ...

  2. 数据结构殷人昆电子版百度云资源_数据结构精讲与习题详解(C语言版第2版清华大学计算机系列教材)...

    导语 内容提要 殷人昆编著的<数据结构精讲与习题详解(C语言版第2版清华大学计算机系列教材)>是清华大学出版社出版的<数据结构(C语言版)>(第2版)的配套教材,对" ...

  3. [深入浅出Cocoa]之消息(二)-详解动态方法决议(Dynamic Method Resolution)

    [深入浅出Cocoa]之消息(二)-详解动态方法决议(Dynamic Method Resolution) 罗朝辉 (http://www.cnblogs.com/kesalin/) 本文遵循&quo ...

  4. ViewPager 详解(二)---详解四大函数

    前言:上篇中我们讲解了如何快速实现了一个滑动页面,但问题在于,PageAdapter必须要重写的四个函数,它们都各有什么意义,在上节的函数内部为什么要这么实现,下面我们就结合Android的API说明 ...

  5. RxJS 系列之二 - Observable 详解

    查看新版教程,请访问前端修仙之路 RxJS 系列目录 RxJS 系列之一 - Functional Programming 简介 RxJS 系列之二 - Observable 详解 (本文) RxJS ...

  6. CORS跨域资源共享(二):详解Spring MVC对CORS支持的相关类和API【享学Spring MVC】

    每篇一句 重构一时爽,一直重构一直爽.但出了问题火葬场 前言 上篇文章通过我模拟的跨域请求实例和结果分析,相信小伙伴们都已经80%的掌握了CORS到底是怎么一回事以及如何使用它.由于Java语言中的w ...

  7. 十二、详解计算网络中的流量控制和差错控制、HDLC

    十二.详解计算网络中的流量控制和差错控制 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动 ...

  8. DFT - 对芯片测试的理解(二) 详解

    DFT - 对芯片测试的理解(二) 详解 参考: https://www.docin.com/p-2014360649.html The basic view of DFT scan chain 这图 ...

  9. 32.深度解密三十二:详解影响QQ群整体排名的那些秘密

    网络营销推广技术.技巧深度解密(三十二)指南: 1.本文档适合零基础以及互联网营销推广人员,主要讲解营销QQ群排名的一些问题. 2.原创版权文档,任何抄袭或者全部.部分模仿都是侵权行为. 3.敬畏法律 ...

最新文章

  1. Git 最全命令总结都在这里了
  2. wordpress 5.0.0 远程代码执行漏洞分析cve-2019-8943
  3. java反射泛型类型,【Java反射】Java 泛型基础
  4. 全新的图形数据库云服务Amazon Neptune正式发布
  5. 1.2 位于Shell脚本第一行的#!
  6. java mybatis 返回map_mybatis返回map集合的格式是什么?mybatis返回map集合实例
  7. usaco题思考记录
  8. mysql sum没法使用,mysql – 使用SUM()而不对结果进行分组
  9. IT专用英语词汇1500词
  10. js中的dataset的使用
  11. XMAPP启动apache和mysql失败的问题
  12. (转)JS事件循环和宏任务和微任务
  13. 如何在linux下批量压缩图片
  14. php拆分excel,PHPExcel合并与拆分单元格的方法
  15. 区块链以及蚂蚁开放联盟链初探索
  16. redis如何设置密码
  17. 使用samtools来对sam/bam/cram相互转换
  18. 记一次网络故障排除:nat虚拟机不能ping外网 浏览器可以上网
  19. 在同一子网下用wireshark抓取QQ用户发送到电脑的图片
  20. 使用Docker搭建ceph群集(nautilus版本)

热门文章

  1. 【爬虫学习笔记day66】7.8. scrapy-redis实战-- IT桔子分布式项目2
  2. Dijkstra算法讲解(通过边实现松弛)
  3. vue 路由三种写法方式
  4. 关键链法vs关键路径法
  5. 计算机打开硬盘响应慢,电脑处理多任务卡顿,开机反应慢,换固态硬盘不能解决问题根本...
  6. 基于Android的百度地图定位开发
  7. 目前机器翻译,发展到哪个阶段了?
  8. 2021年起重机械指挥考试总结及起重机械指挥考试技巧
  9. fedora11 文泉驿micro-hei字体设置
  10. 鸽哒im即时通讯源码加教程