计算机中非常重要的一个领域——图论

不可否认,图论是计算机领域中非常重要的一个领域。而图的存储或者说建图是处理图论问题的大前提。

在算法竞赛中也出现的非常平凡。树这一数据结构也是一种特殊的图,可见图所延伸的领域可是非常的广阔。

任何建图都需要考虑多个方面。

如:

  • 点和边的表示关系
  • 有向图还是无向图
  • 权值的数据结构
  • 遍历方式
  • 点号或边号是否有序

例题讲解

下文以网络延迟时间 为实例代码展示。

本题是最短路算法的典型应用题。常见最短路算法有很多,如:dijkstra, Floyd, Bellman Frod, SPFA 等等。

本文不具体讲解这些算法的原理与细节,仅以朴素 dijkstra 算法为基本模板进行表示。

朴素 dijkstra 算法能很好的与多种常见建图方式应用在一起。

为了辅助读者的阅读,这里就做一下简单算法流程介绍:

  1. 寻找出离源点距离最近的未访问的点(贪心)
  2. 基于该点,对该点邻接的点进行松弛操作
  3. 循环上述操作,直到无法找出能贪心到的最近点
相关推荐
Shan12057 小时前
干货分享|图论的常见存储方式之链式前向星
算法·图论
澈2078 小时前
图论天花板:Dijkstra最短路径算法详解
数据结构·算法·图论
汉克老师2 天前
GESP6级C++考试语法知识(二十七、广度优先搜索(二、二维BFS))
c++·算法·图论·宽度优先·广度优先搜索·gesp6级·gesp六级
故事和你912 天前
洛谷-【动态规划1】动态规划的引入4
开发语言·数据结构·c++·算法·动态规划·图论
Frostnova丶3 天前
【算法笔记】最短路径算法
笔记·算法·图论
故事和你913 天前
洛谷-【动态规划1】动态规划的引入2
开发语言·数据结构·c++·算法·动态规划·图论
一条大祥脚4 天前
Codeforces Round 1099 (Div. 2) 构造|贪心|图论|还原数组
java·算法·图论
一条大祥脚5 天前
2021-2022 ICPC Southwestern Europe Regional Contest
算法·深度优先·图论