zoukankan      html  css  js  c++  java
  • 图论知识点

    欧拉路径|回路

    经过每条边恰好一次的路径

    无向图的欧拉路径:两个点(或 0 个点)度数为奇数,其余点(或所有点)度数为偶数

    有向图的欧拉路径:一个点的出度等于入度 + 1, 一个点的入度等于出度 + 1

    无向图欧拉回路:所有点的度数为偶数

    有向图欧拉回路:所有点的入度等于出度且联通

    Hierholzer算法

    void dfs(int u){//s1~sn中存储的是欧拉路径上的点序列
        for (int v = 1; v <= n; v++){
            if (mp[u][v] > 0){
                mp[u][v]--,mp[v][u]--;
                dfs(v);
            }
        }
        s[temp--] = u;
    }
    

    强联通分量

    有向图中互相可达的极大子图

    (tarjan) 判就好了

    边点双联通

    在一张连通的无向图中,对于两个点u和v,如果无论删去哪条边(只能删去一条)都不能使它们不连通,我们就说u和v边双连通

    在一张连通的无向图中,对于两个点u和v,如果无论删去哪个点(只能删去一个,且不能删 和 自己)都不能使它们不连通,我们就说u和v点双连通

    边双连通分量定义:在分量内的任意两个点总可以找到两条边不相同的路径互相到达。总而言之就是一个圈,正着走反着走都可以相互到达,至少只有一个点。

    点双连通分量定义:任意两个点可以找到一条点不同的路径互相到达。也是一个圈,正反走都可以,至少为一个点。

    详见

  • 相关阅读:
    一个主机下创建两个MySQL
    Chrome: Failed to read the 'localStorage' property from 'Window' 的解决办法
    Effective C++
    归并排序
    Daily Note
    关于Beta分布、二项分布与Dirichlet分布、多项分布的关系
    测试公式
    VLAN原理解释
    子网划分
    windows下制作debian U盘启动
  • 原文地址:https://www.cnblogs.com/Arielzz/p/15041565.html
Copyright © 2011-2022 走看看