zoukankan      html  css  js  c++  java
  • 第十七周学习

    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出发广度优先遍历图
    输出: 图中顶点的一个线性排序
    后置条件: 图保持不变

  • 相关阅读:
    android 4.0 中出错 java.lang.UnsupportedOperationException
    怎么确定你的CPU是否支持64位虚拟化
    宽度百分比单位的转换公式
    Test SRM Level Three: LargestCircle, Brute Force
    802.11(wifi)的MAC层功能
    zookeeper集群的python代码测试
    mysqldump 命令的使用
    xp硬盘安装Fedora14 过程记录及心得体会(fedora14 live版本680M 和fedora14 DVD版本3.2G的选择)
    ContentProvider的使用
    基于 Java 2 运行时安全模型的线程协作--转
  • 原文地址:https://www.cnblogs.com/123jjl/p/13179236.html
Copyright © 2011-2022 走看看