数据结构(6.2_2)——领接表法

领接表法(顺序存储+链式存储)

代码:

cpp 复制代码
#define MaxVertextNum 10
//边(弧)
typedef struct ArcNode {
    int adjvex;//边/弧指向哪个结点
    struct ArcNode* next;//指向下一条弧的指针
    //InfoType info;//边权值
}ArcNode;
//顶点
typedef struct VNode {
    VertexType data;//顶点信息
    ArcNode* first;//第一条边/弧
}VNode,AdjList[MaxVertextNum];
//用领接表存储的图
typedef struct {
    AdjList vertices;
    int vexnum,arcnum;
}ALGraph;
  1. 在无向图中边结点的数量是2|E|,整体空间复杂度为O(|V|+2|E|)
  2. 在无向图中边结点的数量是|E|,整体空间复杂度为O(|V|+|E|)

如何求顶点的度、入度和出度?

无向图

有多少边结点就有多少度

有向图

有向图的度=入度+出度

出度:

  1. 遍历顶点 :对于图中的每个顶点 v

    a. 遍历边 :遍历顶点 v 的所有出边(即所有形式为 (v, w) 的边,其中 w 是另一个顶点)。

    b. 计数 :对于每一条出边,将顶点 v 的出度计数增加1。

入度:

  1. 遍历边 :遍历图中的所有边 (v, w):例如寻找入度a的弧,遍历完后找到所有指向0的弧

注意

图的领接表表示方式不唯一

图的领接矩阵表示方式唯一

总结:

相关推荐
jiushiapwojdap12 小时前
LU分解法求解线性方程组Matlab实现
数据结构·其他·算法·matlab
纽扣66713 小时前
【算法进阶之路】链表进阶:删除、合并、回文与排序全解析
数据结构·算法·链表
xvhao201315 小时前
单源、多源最短路
数据结构·c++·算法·深度优先·动态规划·图论·图搜索算法
m0_6294947317 小时前
LeetCode 热题 100-----17.缺失的第一个正数
数据结构·算法·leetcode
hnjzsyjyj18 小时前
洛谷 P1443:马的遍历 ← BFS
数据结构·bfs
做时间的朋友。18 小时前
精准核酸检测
java·数据结构·算法
如君愿19 小时前
考研复习 Day28 | 习题--计算机网络第四章(网络层 中)、数据结构(树与二叉树 下)
数据结构·计算机网络·考研·课后习题·记录考研
江南十四行19 小时前
排序算法进阶:直接插入排序(简单排序)与希尔排序
数据结构·算法·排序算法
洛水水19 小时前
【Redis入门】一篇详解Redis五大数据结构
数据结构·数据库·redis
CoderCodingNo19 小时前
【CSP】CSP-J 2021真题 | 插入排序 luogu-P7910 (适合GESP四-六级及以上考生练习)
数据结构·算法·排序算法