`
lovecontry
  • 浏览: 1095007 次
文章分类
社区版块
存档分类
最新评论

邻接多重表存储无向图以及有关操作

 
阅读更多

数据结构是编程里面最重要的一门基础课之一,所以学多少遍都不可以嫌多,算法的知识当然是融在其中,多练习,多思考,基础打好了,其他的东西学起来也就so easy了。

邻接多重表,是对用邻接表存储无向图的一种压缩存储,当然也是链式存储,邻接多重表的相关概念,可以百度、谷歌、或者看有关书籍。大部分书都没有详细介绍这个结构的应用(至少我目前还没看到有书上有写),只是说 这个结构在对无向图的边进行操作的时候会比较方便,确实有一点吧,在插入和删除边的时候,虽然不用想邻接表那样去找两条,但是也是需要进行一些判判断。下面是代码,邻接多重表存储的无向图的一些相关操作:

文件"graph.h"

文件"main.cpp"


测试结果:

初始生成的无向图如下所示:


经过插入删除后生成的图就不画出来了 大家一看就知道了

写完代码 完善和debug的过程很艰辛 有时很恶心 但是自己觉得还满意 还不错后,就会觉得很爽啦 所以多自己动手写 是很好的锻炼

分享到:
评论

相关推荐

    用邻接多重表实现图遍历演示

    邻接多重表是一种用于存储无向图的数据结构,它通过在每个顶点处维护一个指向与之相连的所有边的链表来表示图。这种数据结构不仅可以高效地存储图数据,而且可以方便地进行图的遍历操作,如深度优先搜索(DFS)和...

    邻接表或者邻接矩阵为存储结构实现连通无向图的深度优先和广度优先遍历

    总之,这个程序设计任务要求我们理解并实现无向图的两种主要遍历方法,以及如何利用邻接表或邻接矩阵存储图。通过这些方法,我们可以有效地探索图的结构,找出路径,解决许多实际问题,如搜索、最短路径计算等。

    数据结构C语言版-无向图的邻接多重表存储表示和实现(完整版).doc

    这是一种以数组为基础,结合链表数据结构来存储无向图信息的高效方式。在邻接多重表表示中,每一个顶点都与一个链表相关联,这个链表记录了所有与该顶点相连的边的信息。每个边的信息结构中,包含了一些关键的字段:...

    数据结构-图的应用(邻接矩阵、邻接多重表)

    图的类型可以是有向图、无向图、有向网、无向网),能够输入图的顶点和边(或弧)的信息,并存储到相应存储结构(邻接矩阵、邻接表、十字链表、邻接多重表,任选其中两种类型),对自己所创建的图完成以下操作: ...

    无向图的遍历演示(两种遍历方式)

    总的来说,理解和掌握无向图的深度优先搜索和广度优先搜索,以及如何利用邻接多重表进行存储和遍历,对于学习和解决各种图相关的算法问题至关重要。无论是数据结构的构建、路径查找还是网络拓扑分析,这些基本技巧都...

    6.2.3 十字链表、邻接多重表1

    但是,邻接多重表只能用于存储无向图。 邻接矩阵 邻接矩阵是一种常用的图存储方法。它使用一个矩阵来存储图的所有信息,矩阵的每个元素表示两个顶点之间是否存在边。邻接矩阵的空间复杂度为O(|V|^2),其中|V|是顶点...

    图的存储结构(下)十字链表和邻接多重表,边集数组 数组和链表.pdf

    邻接多重表是无向图的存储结构,它可以解决邻接表的出度问题。在邻接多重表中,每个边表节点中含有ivex和jvex两个指针域,ivex指向的是某条边的起点,而jvex指向的是某条边的终点。每个边表节点还含有ilink和jlink两...

    40. 蛤蟆的数据结构笔记之四十图的邻接多重链表表示实现.docx

    【描述】:本文介绍了数据结构中用于存储无向图的邻接多重链表表示方法,以及如何通过C语言实现相关操作。 【标签】:windows 【正文】: 在数据结构中,图是一种重要的非线性数据结构,它由顶点集合和边集合构成...

    6.2_3_十字链表、邻接多重表1

    邻接矩阵适用于查找操作频繁且图较稠密的情况,邻接表和十字链表适用于稀疏图,而邻接多重表则是无向图的良好选择。在实际应用中,应根据图的特性、操作频率以及空间限制来决定采用哪种存储结构。

    multi-table-graph-.rar_Table_邻接多重表

    标题中的"multi-table-graph-.rar_Table_邻接多重表"暗示了我们正在处理一个与图论相关的编程项目,特别是关于无向图的邻接多重表的实现。邻接多重表是一种常用的图数据结构,用于存储图中顶点之间的连接关系。 在...

    图的遍历问题

    总之,这个Java程序实现了基于邻接多重表的无向图遍历,包括深度优先和广度优先两种策略,能够有效地在联通图中访问所有节点,并输出相应的遍历序列和边集。通过理解和应用这些概念,可以解决许多实际问题,如网络...

    40. 蛤蟆的数据结构笔记之四十图的邻接多重链表表示实现.pdf

    邻接多重链表是一种常用的数据结构,用于存储无向图。该结构由两个部分组成:顶点表和边表。顶点表存储每个顶点的信息,包括顶点的标识符、度数、邻接边等信息。边表存储每条边的信息,包括边的两个端点、边的权值、...

    linjiejuzhen.rar_邻接多重表

    对任意给定的图(顶点数不小于20,边数不少于30,图的类型可以是有向图、无向图、有向网、无向网),能够输入图的顶点和边(或弧)的信息,并存储到相应存储结构(邻接矩阵、邻接表、十字链表、邻接多重表,任选其中...

    数据结构--图的存储结构及操作--思维导图.pdf

    定义:邻接多重表是一种用链表存储无向图中的边信息的方法。每个结点对应一个链表,链表中存储着与该结点相邻的所有边。 实现:邻接多重表可以用一个链表数组实现,每个链表元素对应一个边。 优缺点: * 优点:...

    数据结构课程设计图的遍历

    以邻接多重表为存储结构,实现连通无向图的深度优先和广度优先遍历。以用户指定的结点为起点,分别输出每种遍历的结点访问序列和相应生成树的边集。

    图的遍历(有向图和无向图)

    本主题将详细介绍有向图和无向图的深度优先遍历(DFS)与宽度优先遍历(BFS),并探讨递归和非递归两种实现方式。 首先,我们来理解有向图和无向图的区别。有向图的边具有方向性,即从一个节点指向另一个节点,而无...

    aaa.rar_无向图 环_无向图所有环_无向图最小环_最小生成树_树所有操作

    图的类型可以是有向图、无向图、有向网、无向网),能够输入图的顶点和边(或弧)的信息,并存储到相应存储结构(邻接矩阵、邻接表、十字链表、邻接多重表,任选其中两种类型),对自己所创建的图完成以下操作: ...

    数据结构第4次作业.docx

    多重邻接表是图的一种存储方式,每个顶点都有一个邻接表,记录与其相邻的所有顶点。根据图遍历顶点的顺序,可以绘制多重邻接表的示意图。 2. **有环判断**: 深度优先搜索(DFS)可以用来检测图中是否存在环。...

    我的数据结构实验报告.doc

    数据结构实验报告主要探讨了几个核心概念:约瑟夫问题、稀疏矩阵、运算器以及字符串操作。以下是对这些知识点的详细说明: 1. **约瑟夫问题**:这是一个著名的数学问题,涉及到循环链表的使用。在问题描述中,n个人...

Global site tag (gtag.js) - Google Analytics