欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    71 图的定义和基本术语 71 图的定义和基本术语.ppt

    • 资源ID:87674841       资源大小:226KB        全文页数:21页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    71 图的定义和基本术语 71 图的定义和基本术语.ppt

    第七章 图图 7.1 图的定义和基本术语 7.2 图的存储结构 7.2.1数组表示法 7.2.2邻接表 7.2.3十字链表 7.2.4邻接多重表 7.3 图的遍历 7.3.1 深度优先搜索 7.3.2 广度优先搜索 7.4 图的连通性问题 7.4.1 无向图的连通分量和生成树 7.4.2 最小生成树 7.5 有向无环图及其应用 7.5.1 拓扑排序 7.5.2 关键路径 7.6 最短路径 7.6.1 从某个源点到其余各顶点的最短路径 7.6.2 每一对顶点间的最短路径图图(Graph)是较线性表和树更为复杂的结构。图图中任意数据两个元素之间都可能相关。第七章 图图 G1=(V1,A1)V1=v1,v2,v3,v4 A1=,G2=(V2,E2)V2=v1,v2,v3,v4,v5 E2=(v1,v2),(v1,v4),(v2,v3),(v2,v5),(v3,v4),(v3,v5)7.1 图的定义和基本术语V1V3V4V2有向图 G1V1V4V5V2无向图 G2V3 顶点 弧 弧尾 弧头顶点边7.1 图的定义和基本术语(续一)完全图:完全图:n个顶点有n(n-1)/2条边的无向图 有向完全图:有向完全图:n个顶点有n(n-1)条弧的有向图 稀疏图:有稀疏图:有很少条边的图(如边数e nlogn)稠密图:稠密图:非稀疏图 权:权:与边或弧相关的数数 网络:网络:带权的图V1V3V2V1V3V2274 子图:子图:G=(V,E)和G1=(V1,E1)若V1属于V,E1属于E 则G1是G的子图7.1 图的定义和基本术语(续二)V1V1V3V4V2V3V1V3V4V1邻接点:无向图中有边相连的两个顶点互为无向图中有边相连的两个顶点互为邻接点 顶点的度:度:无向图中和某顶点相连的邻接点数无向图中和某顶点相连的邻接点数 入度:入度:有向图中指向某顶点的弧的数目有向图中指向某顶点的弧的数目 出度:出度:有向图中从某顶点出发的弧的数目有向图中从某顶点出发的弧的数目7.1 图的定义和基本术语(续三)路径:路径:两个顶点之间的顶点序列,该序列的每个顶点与其前驱是邻接点,每个顶点与其后继也是邻接点 回路(环):回路(环):第一顶点和最后顶点相同的路径 简单路径:简单路径:顶点不重复的路径 连通:连通:两个顶点之间有路径 连通图:连通图:任意任意两个顶点之间有路径 连通分量:连通分量:无向图中的极大连通子图。强连通图:任意强连通图:任意两个顶点之间有双向路径 强连通分量:强连通分量:有向图中的极大强连通子图。连通图的生成树:生成树:极小连通子图。不唯一,但n个顶点的生成树 有且仅有n-1条边。生成森林:生成森林:7.2 图的存储结构 7.2.1 数组表示法#define INFINITY INT_MAX#define MAX_VERTEX_NUM 20typedef enumDG,DN,AG,AN GraphKind;typedef struct ArcCell VRType adj;InfoType *info;ArcCell,AdjMatrixMAX_VERTEX_NUM MAX_VERTEX_NUM typedef struct VetexType vexsMAX_VERTEX_NUM;AdjMatrix arc;int vexnum,arcnum;GraphKind kind;MGraph;数组表示法(邻接矩阵)无向图、有向图、网均适用易求各顶点的度。例如有向图G1和无向图G2的邻接矩阵为0 1 1 00 0 0 00 0 0 11 0 0 0G1.arc=0 1 0 1 01 0 1 0 10 1 0 1 11 0 1 0 00 1 1 0 0G2.arc=n2的存储量无向图的邻接矩阵总是对称的-可以采用压缩存储网及其邻接矩阵V1V3V4V2V5V65489731565(a)网 5 7 4 8 9 5 6 5 3 1 (b)邻接矩阵7.2.2 邻接表-链式链式存储结构#define MAX_VERTEX_NUM 20typedef struct ArcNode int adjvex;struct ArcNode *nextarc;InfoType *info;ArcNode;typedef struct AdjList verteces;int vexnum,arcnum;int kind;ALGraph;typedef struct VNode VetexType data;ArcNode *firstarc;Vnode,AdjList MAX_VERTEX_NUM;data firstarc头结点Adjvex nextarc info表结点邻接表的链式链式存储结构示意图0123V1V2 V3V40123V1V2V3V401234V1V2V3V4V52 1 3 3 0 0 2 0 3 1 2 0 2 1 2 0 4 3 1 4 G1的邻接表G2的邻接表G1的逆邻接表邻接表:邻接表:求出度容易,求入度难邻接表:邻接表:求入度容易,求出度难7.3 图的遍历图的遍历:从图的某顶点出发,访问所有顶点,且每个顶点仅被访问一次。两种遍历图的路径:深度优先搜索和广度优先搜索它们对无向图和有向图都适用深度优先搜索类似于树的先根遍历广度优先搜索类似于树的层次遍历7.3.1 深度优先搜索V1V2V4V5V8V3V6V7V1V2V4V8V5V3V6V71 2 3 4 5 6 7 8visited1 1 0 1 1 0 0 1遍历顺序:非连通的图重复上述过程,使每个顶点均被访问V1V2stackV4V8V5深度优先搜索算法Boolean visitedMAX;Status (*VisitFunc)(int v);void DFSTraverse(Graph G,Status(*visit)(int v)VisitFunc=visit;for(v=0;vG.vexnum;+v)visitedv=FALSE;for(v=0;vG.vexnum;+v)if(!visitedv)DFS(G,v);void DFS(Graph G,int v)visitedv=TRUE;VisitFunc(v);for(w=FirstAdjVex(G,v);w;w=NextAdjVex(G,v,w)if(!visitedw)DFS(G,w);7.3.2 广度优先搜索V1V2V4V5V8V3V6V7V1V2V3V4V5V6V7V81 2 3 4 5 6 7 8visited1 0 0 0 0 0 0 0V2V3Queue遍历顺序:非连通的图重复上述过程,使每个顶点均被访问void BFSTraverse(Graph G,Status(*visit)(int v)for(v=0;vG.vexnum;+v)visitedv=FALSE;IntiQueque(Q);for(v=0;vG.vexnum;+v)if(!visitedv)EnQueue(Q,v);while(!QueueEmpty(Q)DeQueue(u);visitedu=TRUE;Visit(u);for(w=FirstAdjVex(G,u);w;w=NextAdjVex(G,u,w)if(!visitedw)visitedw=TRUE;visited(w);EnQueue(G,w);广度优先搜索算法7.4 图的连通性问题7.4.1 无向图的连通分量和生成树V1V2V4V5V8V3V6V7深度优先生成树V1V2V4V5V8V3V6V7广度优先生成树7.4.3 最小生成树连通网的生成树一棵生成树的代价-树上各边的代价之和最小生成树-一个连通网的所有生成树中代价最小的生成树求最小生成树的Prim算法求最小生成树的Kruskal算法Prim算法示意图V1V2V4V5V3V66555662134V1V2V4V5V3V61V1V2V4V5V3V614V1V2V4V5V3V6142V1V2V4V5V3V61425V1V2V4V5V3V614253Kruskal算法示意图V1V2V4V5V3V66555662134V1V2V4V5V3V61V1V2V4V5V3V612V1V2V4V5V3V6132V1V2V4V5V3V61423V1V2V4V5V3V614253实验与习题理论习题 7.1,7.2,7.4,7.5 7.7实验算法题:7.14

    注意事项

    本文(71 图的定义和基本术语 71 图的定义和基本术语.ppt)为本站会员(asd****56)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开