邻接矩阵 请画出下图的邻接矩阵和邻接表
一、图的邻接矩阵
为对称矩阵。
二、为什么要写邻接矩阵
邻接矩阵是图论中的内容,指的是地址集合中有直接相连关系的集合。
若两点m,n之间直接可达则对应的邻接矩阵的V=a[m][n]=a[n][m]这里的V代表的就是权值,这个值可以是1仅仅表示可达也可以是两点之间的距离~~~也可以是两点之间的费用等等这个视具体情况来定~~~~2011年
三、邻接矩阵的深度和广度怎么求
求邻接矩阵的深度和广度步骤如下:
1.创建一个队列,用于存储待访问的节点。
2.选择一个起始节点,将其标记为已访问,并将其加入队列。
3.当队列不为空时,执行以下步骤:
-从队列中取出一个节点,将其输出或进行其他操作。
-遍历该节点的邻居节点:
-如果邻居节点未被访问过,则将其标记为已访问,并将其加入队列。
4.重复步骤3,直到队列为空。
具体到邻接矩阵的实现,可以按照以下步骤进行:
1.创建一个布尔类型的数组visited,用于记录节点是否已被访问过。
2.创建一个队列,用于存储待访问的节点。
3.选择一个起始节点,将其标记为已访问,并将其加入队列。
4.当队列不为空时,执行以下步骤:
-从队列中取出一个节点,将其输出或进行其他操作。
-遍历该节点的邻居节点:
-如果邻居节点未被访问过,则将其标记为已访问,并将其加入队列。
5.重复步骤4,直到队列为空。
在邻接矩阵中,可以通过访问矩阵中的元素来判断节点之间是否有边相连。如果邻接矩阵中的元素为1,则表示两个节点之间有边相连;如果为0,则表示两个节点之间没有边相连。
需要注意的是,广度优先遍历是一种层次遍历,即先访问起始节点的所有邻居节点,然后再访问邻居节点的邻居节点,以此类推。这样可以保证在遍历过程中,先访问离起始节点近的节点,再访问离起始节点远的节点。