76.【图】(二)

简介: 76.【图】

非强连通图的极大强连通图子图成为强连通分量

强连通分量

(三).图的遍历

(1).深度优先遍历(相似于栈)

深度优先遍历的主要思想: 新进后出:
(1).访问顶点v。
(2).从v的未被访问的邻接点选取一个顶点w,然后从w深度优先遍历。
(3).如果访问途中没有遇到未被访问的顶点,那么就先进的后出(栈)
(4).重复上诉步骤,直至所有顶点被访问完毕。

(2).广度优先遍历(相似于层序遍历)

以顶点v为起始点,有近到远,一次访问和v有路径相通且路径长度为1,2..的
顶点,为了使先被访问顶点的邻接点"先于"后被访问顶点的邻接点"被访问"

(四).图的存储结构及实现

(1).邻接矩阵的存储结构

图的邻接矩阵存储也称数组表示法,用一个一维数组存储图中的顶点,用一个二维
数组存储图中的边(即个顶点之间的邻接关系),存储顶点之间的邻接关系的二维数组
称为邻接矩阵,设图G=(V,E)有n个顶点,则邻接矩阵是一个n*n的方阵

无向图

1.无向图的邻接矩阵一定是对称矩阵,而有向图的矩阵不一定对称。

2.在无向图,顶点i的度等于邻接矩阵中第i行(或第i列)非零元素的个数。

3.对于有向图,顶点i的出度等于邻接矩阵中第i行非零元素的个数;顶点

i的入度等于邻接矩阵中第i列非零元素的个数

4.判断顶点 i 和 j 之间是否存在边,只需要测试邻接矩阵中相应位置的元素

edge[i][j],若其值为1,则有边;否则,顶点 i 和 j

之间不存在边

5.查找顶点i的所有邻接点,扫描邻接矩阵的第i行,若edge[i][j]的值为1,则顶点j是顶点i 的邻接点

(2).邻接表的存储结构

邻接表是一种顺序存储与链式存储相结合的存储方法,像极了孩子表示法

顶点表:存储边表头指针的数组和存储顶点的数组构成了邻接表的表头数组。

1.vertex为数据域,存储顶点信息。

2.firstEdge为指针域,指向边的第一个结点。

3.adjvex为邻接点域,存放该顶点的邻接点在顶点表中的下标

4.next为指针域,指向边表的下一个结点

无向图

有向图

1.对于无向图,顶点i的度等于顶点i的边表中的节点个数

2.对于有向图,顶点 i 的出度等于顶点 i 的出边表中的结点个数。

3.顶点 i 的入读等于所有出边表中以顶点 i 为邻接点的结点个数

4.判断从顶点到顶点j是否存在边,只需要测试顶点 i 的边表中是否存在临接点域为 j 的结点

5.查找顶点 i 的所有邻接点,只需要遍历顶点i的边表,该边表中的所有结点都是顶点的邻接点。

(3).邻接矩阵和邻接表的比较

相关文章
|
11月前
|
人工智能 自然语言处理 测试技术
AxBench:斯坦福大学推出评估语言模型控制方法的基准测试框架
AxBench 是由斯坦福大学推出,用于评估语言模型可解释性方法的基准测试框架,支持概念检测和模型转向任务,帮助研究者系统地比较不同控制技术的有效性。
295 5
AxBench:斯坦福大学推出评估语言模型控制方法的基准测试框架
如何绘制PAD图和N-S图(详细步骤)
如何绘制PAD图和N-S图(详细步骤)
2659 0
|
9月前
|
人工智能 自然语言处理 搜索推荐
Manus爆火,我发现平替开源项目OpenManus带你玩转AI智能体开发,无需邀请码!
在AI技术日新月异的今天,OpenManus像一把打开智能体开发大门的万能钥匙,让每个人都能轻松构建自己的AI助手!
460 0
|
前端开发 Ubuntu 安全
部署在什么操作系统上比较好
【8月更文挑战第25天】部署在什么操作系统上比较好
348 3
|
人工智能 小程序 前端开发
【uniapp小程序】uploadFile文件上传
上节中我们讲到小程序的request请求,掌握了基本的网络请求方式,这节我们通过小程序的uploadFile接口能力完成对小程序上传操作(uni.uploadFile,后端php接口),通过这一节你可以学习到php的上传接口的写法,以及如何配合前端完成一个小程序上传操作✨✨欢迎订阅本专栏或者关注我,大家一起努力每天一题算法题✨✨❤️❤️❤️ 最后,希望我的这篇文章能对你的有所帮助!愿自己还有你在未来的日子,保持学习,保持进步,保持热爱,奔赴山海!❤️❤️❤️。
1335 0
【uniapp小程序】uploadFile文件上传
鸿蒙应用更新跳转到应用市场
鸿蒙应用更新跳转到应用市场
325 0
|
算法
N-S图详解
N-S图详解
1537 0
|
前端开发 JavaScript 容器
使用JavaScript实现图片轮播效果
使用JavaScript实现图片轮播效果
|
传感器 机器学习/深度学习 编解码
2022最新综述!一文详解自动驾驶中的多模态融合感知算法(数据级/特征级/目标级)
多模态传感器融合意味着信息互补、稳定和安全,长期以来都是自动驾驶感知的重要一环。然而信息利用的不充分、原始数据的噪声及各个传感器间的错位(如时间戳不同步),这些因素都导致融合性能一直受限。本文全面调研了现有多模态自动驾驶感知算法,传感器包括LiDAR和相机,聚焦于目标检测和语义分割,分析超过50篇文献。同传统融合算法分类方法不同,本文从融合阶段的不同将该领域分类两大类、四小类。此外,本文分析了当前领域存在的问题,对未来的研究方向提供参考。
2022最新综述!一文详解自动驾驶中的多模态融合感知算法(数据级/特征级/目标级)
|
Linux 数据安全/隐私保护 Android开发
Qt上位机开发之如何让自己的APP启动与硬件信息绑定(Win端)
Qt上位机开发之如何让自己的APP启动与硬件信息绑定(Win端)
413 0