算法笔记-第十章-图的定义和相关术语

算法笔记-第十章-图的定义和相关术语

图的定义

大佬讲解

无向图的度

图中每一个顶点的度定义为以该项点为一个端点的边的数目

dart 复制代码
#include <cstdio>

const int MAXN = 100;

int degree[MAXN] = { 0 };

int main() {
    int n, m, u, v;
    scanf("%d%d", &n, &m);

    //在输出边度的时候就已经表示度的数目了,所以用一个degree(hash思想进行直接 )    
    for (int j = 0; j < m; j++) {    
        scanf("%d%d", &u, &v);    
        degree[u]++;    
        degree[v]++;    
    }
    for (int i = 0; i < n; i++) {    
        printf("%d", degree[i]);    
        if (i < n - 1) {    
            printf(" ");    
        }
    }
    return 0;    
}

有向图的度

dart 复制代码
//有向图的入度数和出度数
#include <cstdio>

const int MAXN = 100;
int inDegree[MAXN] = { 0 };//入度的条数
int outDegree[MAXN] = { 0 };//出度的条数

int main() {
    int n, m, u, v;
    scanf("%d%d", &n, &m);//n个顶点,m条边
    for (int j = 0; j < m; j++) {
        scanf("%d%d", &u, &v);
        outDegree[u]++;
        inDegree[v]++;
    }
    for (int i = 0; i < n; i++) {
        printf("%d %d\n", inDegree[i], outDegree[i]);
    }
    return 0;
}
相关推荐
wanderist.35 分钟前
线性筛法详解:从筛质数到欧拉函数、Möbius 函数与约数函数
java·数据结构·算法
All for pursuit.1 小时前
【设计-1】208.实现Trie (前缀树)
数据结构·c++·算法·leetcode
weixin_307779131 小时前
C++代码实现MATLAB中的crossval函数功能
开发语言·c++·算法·matlab
青少儿编程课堂1 小时前
背包问题(0/1 背包与完全背包)解题精讲——动态规划入门
c++·python·算法·bfs·信息学竞赛
光影少年2 小时前
为什么 JavaScript 中 0.1 + 0.2 !== 0.3,如何让其相等?
前端·javascript·算法
HEJOO92 小时前
Linux 设备驱动系列——使用全局工作队列
java·linux·算法
Code_Solitude2 小时前
c语言:递归
java·c语言·算法
程序员清风2 小时前
哈希表:从键值映射到高效查找
数据结构·哈希算法·散列表
一隅论数智2 小时前
OWL(Web Ontology Language)介绍与使用举例(二)
大数据·经验分享·笔记·学习·自然语言处理·学习方法·政务
edtoplort3 小时前
OpenAI紧急叫停GPT-6.1 Astra训练,奥尔特曼为何踩刹车
人工智能·gpt·算法