zoukankan      html  css  js  c++  java
  • 图的概念及性质

    数据结构中所说的图有两点限制:

    • 不考虑顶点到自身的边,也即是若 <vi,vj>(vi,vj) 是图 G 的边,则要求 vivj
    • 同一对顶点之间没有重复出现的边(也即两点之间,要么没有边,要么仅有一条边),若 <vi,vj>(vi,vj) 是图 G 的边,那么它就是这两个顶点之间唯一的边;

    当然,去掉这两个限制也将得到另一类稍微不同的数学对象。

    1. 概念

    完全图:任意两个顶点(两个不同的顶点)之间都有边的图(有向图或无向图);

    • n 个顶点的无向完全图有 (n2) 条边;
    • n 个顶点的有向完全图有 n(n1) 条边;

    连通(连通的实际含义就是两地之间存在路径)图

    • 连通无向图:如果无向图 G 中任意两个顶点 vivj 之间都连通;
    • 强连通有向图:如果对有向图 G 任意两个顶点 vivj 都互相连通。

    有根图:如果在有向图 G存在一个顶点 v,从顶点 v 到图 G 中其他顶点均有路径,则称 G 为有根图;

    • 有根图的根可能不唯一;

    子图与连通子图:一个图可能不是连通图(或强连通图),但它的一些子图则是可能连通的(或强连通的),这种子图称为原图的连通子图(对于有向图,称为强连通子图)

    图与网络:如果图 G 中的每条边都被赋予一个权值,则称 G 为一个带权图(可以是带权有向图或者带权无向图)。边的权值可用于表示实际应用中与顶点之间的关联有关的某些信息。

    带权的连通无向图被称为网络;

    2. 性质

    • 顶点数、边数和顶点度数的关系

      e=12iD(vi)

      对于有向图,D(vi) 表示顶点 vi 的出度+入度;

      结论是显然地,可用简单的数学归纳法;也可通过想象,两个点才对应一个边(无向图),边的个数是度数的一半;

    • 最小连通无向图的边数与顶点的关系

      包含 n 个顶点的最小连通无向图 G 恰有 n-1 条边;

      2 ⇒ 1,3 ⇒ 2

      n ⇒ n-1

      使用数学归纳法即可证明:新增加一个结点, 只需引入一个到其他任何节点的边;

    • 最小有根图的边数与顶点的关系,

      包含 n 个顶点的最小有根图(即去掉任何一条边将不再有根图)恰好包含 n-1 条边,
      同理,使用数学归纳法;

      根据 2 ⇒ 1,3 ⇒ 2,提出假设,n ⇒ n-1
      引入一个新的顶点,找到之前的根,⇒ 得证;

    3. 图与树的关系

    所谓的树,就是从唯一的根节点出发,能到达任何其他结点;

    • 最小连通无向图(n 个顶点 ⇒ n1 条边):无向树
      当然因为连通图是彼此互通的,无向树中的任何一个顶点都可以看做树的根,因此是无向的;
    • 最小有根图(n 个顶点 ⇒ n1条边):有向树,有根图的根可以看做树根,树中因此存在树根到其他每一个顶点的路径;
  • 相关阅读:
    02_java基础学习_基础语法(上)01_day02总结
    EditPlus如何设置保存时不产生.bak备份文件?
    UltraEdit(UE)如何设置去掉.bak备份文件?
    如何在win10上连接苹果无线键盘
    01_java基础学习_Java概述_day01总结
    Python 提取Twitter tweets中的元素(包括text, screen names, hashtags)
    #leetcode#Path Sum II
    怎样实现广度优先遍历(BFS)
    GCD编程-串行队列与并发队列
    在对方电脑建立IPC连接, 利用IPC$入侵 运行木马
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9423993.html
Copyright © 2011-2022 走看看