• 第十七周学习


    1.图的定义

        图(Graph)是由顶点(vertex)的有穷非空集合和顶点之间边(edge)的集合组成,通常表示为:G(V,E),其中,G表示一个图,V是图G中顶点的集合,E是图G中边的集合
    

    a.若顶点之间 Vi 和 Vj 之间没有方向,则为无向边,用无序偶对( Vi , Vj )表示
    b.若顶点之间 Vi 和 Vj 之间有方向,则为有向边(也称弧),用有序偶对< Vi , Vj >表示, Vi 为弧尾,Vj为弧头

    2.图的基本概念

    (1)简单图
    图中既无吊环又无多重边,即为简单图
    (2)无向图
    如果图中任意两个顶点之间的边都是无向边(简而言之就是没有方向的边),则称该图为无向图(Undirected graphs)
    (3)有向图
    如果图中任意两个顶点之间的边都是有向边(简而言之就是有方向的边),则称该图为有向图(Directed graphs)
    (4)完全图
    ①无向完全图:在无向图中,如果任意两个顶点之间都存在边,则称该图为无向完全图。(含有n个顶点的无向完全图有(n×(n-1))/2条边)

    在无向图中,
    顶点的度—TD(v):指依附于该顶点的边的个数,n个顶点e条边的无向图中有以下成立的公式:

    权 网
    在图中,权(weight)通常是对边赋予的有意义的数值量,边上带权的图称为网或网图(network)
    3.图的抽象数据类型定义

    ADT Graph
    DATA 顶点的有穷非空集合和边的集合
    InitGraph
    前置条件: 图不存在
    输入: 无
    功能: 图的初始化
    输出: 无
    后置条件: 构造一个空的图

    DestoryGraph
    前置条件: 图已存在
    输入: 无
    功能: 销毁图
    输出: 无
    后置条件: 释放图所占的存储空间

    GetVex
    前置条件: 图已存在
    输入: 顶点V
    功能: 在图中查找顶点V的数据信息
    输出: 顶点V的数据信息
    后置条件: 图不变

    putVex
    前置条件: 图已存在
    输入: 顶点V,顶点信息value
    功能: 在图中查找顶点V并将value的值赋给顶点V
    输出: 无
    后置条件: 无

    InsertVex
    前置条件: 图已存在
    输入: 顶点V
    功能: 在图中插入一个顶点
    输出: 如果插入不成功,抛出异常
    后置条件:如果插入成功,图中增加了一个顶点

    deleteVex
    前置条件: 图已存在
    输入: 顶点V
    功能: 在图中删除一个顶点
    输出: 如果删除不成功,抛出异常
    后置条件:如果删除成功,图中少了一个顶点

    insertArc
    前置条件: 图已存在
    输入: 顶点U,顶点V,顶点U和V之间边的信息
    功能: 在图中插入一条边
    输出: 如果插入不成功,抛出异常
    后置条件: 如果插入成功,图中增加了一条边

    deleteArc
    前置条件: 图已存在
    输入: 顶点U,顶点V
    功能: 在图中删除顶点U和V之间的边
    输出: 如果删除不成功,抛出异常
    后置条件: 如果删除成功,图中少了一个顶点

    DFSTraverse
    前置条件: 图已存在
    输入: 遍历的起始顶点V
    功能: 从顶点V出发深度优先遍历图
    输出: 图中顶点的一个线性排序
    后置条件: 图保持不变

    BFSTraverse
    前置条件: 图已存在
    输入: 遍历的起始顶点V
    功能: 从顶点V出发广度优先遍历图
    输出: 图中顶点的一个线性排序
    后置条件: 图保持不变

  • 相关阅读:
    xcode调试技巧
    iOS应用崩溃日志揭秘(二)
    iOS应用崩溃日志揭秘(一)
    排序算法
    Java中的Reference
    windows环境中mysql数据库重置root用户密码
    了解浮点数的编码形式
    读《深入理解计算机系统》Chapter1
    枚举学习
    Charles抓包工具在mac上配置
  • 原文地址:https://www.cnblogs.com/123jjl/p/13179236.html
Copyright © 2020-2023  润新知