| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 数据结构与算法 -> 数据结构.图 -> 正文阅读 |
|
[数据结构与算法]数据结构.图 |
映射数据的两种常见结构是集合和图。实现一个图来映射资源的最大风险是在图中可能有环(环指的是图的一个顶点有多条路径指向另一个顶点,这就意味着遍历图是个无止境的操作)。 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??——《云原生基础架构.保持资源映射简单》 前言线性结构中,除首结点没有前驱、末结点没有后继外,一个节点只有唯一的直接前驱和唯一的直接后继;树结构中,除根节点没有前驱结点外,其余的每个节点只有唯一的一个前驱(双亲)结点和多个后继(子树)结点;而在图中,任意结点间都可能有直接关系,也就是说图中一个结点的前驱和后继的数目是不限的。 图的定义G=(V,E) V代表图中顶点的非空有限集合,E是图中边的有限集合。 1)有向图。图中每条边都是有方向,记作<vi,vj>,表示从vi到vj有一条有向边;vi称作弧尾,vj称作弧头; 2)无向图。图中每条边都无方向,记作(vi,vj); 3)完全图。一个无向图具有n个顶点,而每个顶点与其它n-1个顶点之间都有边,则称之为无向完全图,此时其共有n(n-1)/2条边。同理n个顶点的有向完全图中边数为n(n-1),因为有向完全图每两个不同顶点之间都有两条方向相反的边; 注:任何一个顶点都可以被看作第一个顶点,巴特为了计算,给图中每个顶点赋一个序号值。 图的存储结构1)邻接矩阵表示法 图的邻接矩阵表示法是指用一个矩阵来表示图中顶点之间的关系(相连为1,不相连为0)。对于n个顶点的图G=(V,E),其邻接矩阵是个n阶方阵: 有向图及其邻接矩阵: ? ? ? ? A=?? 无向图及其邻接矩阵 ? ? ?B= 2)邻接链表表示法 邻接链表表示法指的是为图的每个顶点建立一个单链表 图的遍历基于图的每个顶点都可能与其余顶点相连,所以在遍历了某个顶点之后很可能会沿着某路径回到该顶点,这就造成了不必要的重复,那么为了避免对顶点进行重复遍历,在图的遍历过程中必须标记每个已访问过的顶点。 1,深度优先搜索(DFS) 2,广度优先搜索(BFS) 1)一度关系胜过二度关系,广度优先搜索找到的是最短的路径 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 18:38:18- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |