题目描述LQ国拥有n个城市,从0到n−1编号,这n个城市两两之间都有且仅有一条双向道路连接,这意味着任意两个城市之间都是可达的。每条道路都有一个属性D,表示这条道路的灰尘度。当从一个城市A前往另一个城市B时,可能存在多条路线,每条路线的灰尘度定义为这条路线所经过的所有道路的灰尘度之和,LQ国的人都很讨厌灰尘,所以他们总会优先选择灰尘度最小的路线。LQ国很看重居民的出行环境,他们用一个指标P来衡量LQ国的出行环境,PP定义为:其中d(i,j)d(i,j)表示城市ii到城市jj之间灰尘度最小的路线对应的灰尘度的值。为了改善出行环境,每个城市都要有所作为,当某个城市进行道路改善时,会将与这个城市直接
文章目录前言课前温习一、深度优先搜索(DFS)1、排列数字1.1题目描述1.2思路分析1.3代码实现2、n-皇后问题1.4题目描述1.5思路分析1.6代码实现二、宽度优先搜索(BFS)1、走迷宫2.1题目描述2.2思路分析2.3代码实现三、树与图的存储四、树与图的遍历1、深度优先遍历(846.树的重心)核心模板4.1题目描述4.2思路分析4.3代码实现2、宽度优先遍历(847.图中点的层次)核心模板4.4题目描述4.5思路分析4.6代码实现五、拓扑排序(848.有向图的拓扑序列)核心模板5.1题目描述5.2思路分析5.3代码实现六、Dijkstra算法核心模板题目一6.1题目描述6.2思路分析
记录一下学校训练的一道建模题目目录1问题描述2问题分析问题一分析问题二分析问题三分析3问题假设4建模与求解变量说明问题一建模代码求解问题二建模代码求解问题三建模代码求解5结果分析1问题描述江平市是一个人口不到20万人的小城市。根据该市的蔬菜种植情况,分别在菜市场(A),城乡路口(B)和南街口(C)设三个收购点,再由各收购点分送到全市的8个菜市场,该市道路情况,各路段距离(单位:100m)及各收购点,菜市场①到⑧的具体位置见下图。按常年情况,A、B、C三个收购点每天收购量分别为250,200和180(单位:100kg),各菜市场的每天需求量及发生供应短缺时带来的损失(元/100kg)见表1。设从
途径,迹,路,圈,距离和直径定义:给定图G=(V,E),w=v0e1v1e2…ekvk是G中点边交替组成的序列,其中vi∈V,ei∈E,若w满足ei的端点为vi-1与vi,则称w为一条从顶点v0到顶点vk的途径(或通道或通路),简称(v0,vk)途径。顶点v0和vk分别称为w的起点和终点,其它点称为内部点,途径中的边数为它的长度。在简单图中,途径可以简单地由其它顶点序列来表示。边不重复的途径称为迹,点不重复的迹称为路。起点和终点相同的途径、迹和路分别称为闭途径、闭迹、圈,闭途径称为环游,闭迹称为回路。长度为k的圈称为k圈,k为奇数时称为奇圈,k为偶数时称为偶圈。自环是长度为1的圈。3圈常称为三
在此之前,我们需要先理清图和网的区别1.图G:有两个集合,边集V和点集E【点集用来存放各个顶点,边集用来存放各条边来表示关联两点的联系】2.权值:即即两顶点之间互相往来需要花费的代价或消耗3.网:带权值的图所谓邻接矩阵,即用矩阵排布的方式来构建两点之间的关系1.针对图,邻接矩阵采用[0-1]排布【即两点之间有边就写1代表能通过,没有边就写0代表无法通过】 另外,在这里我们对图的邻接矩阵进行讨论的时候,是默认点到自身也是没有边的针对网,邻接矩阵采用[权值-∞]分布【即两点之间有边就写边上所带的权值代表距离损耗,没有边就写∞代表无法到达】 另外,会了方便,我们对于网的邻接矩阵中自身到自身的损耗也写
floyd算法及其扩展应用floyd算法及其扩展应用AcWing1125.牛的旅行AcWing343.排序AcWing344.观光之旅AcWing345.牛站floyd算法及其扩展应用AcWing1125.牛的旅行#include#include#include#includeusingnamespacestd;typedefpairdouble,double>PDD;#definexfirst#defineysecondconstintN=155;doubleINF=1e20;doubled[N][N];doublemaxd[N];charg[N][N];intn;PDDq[N];//记录每
图论刷题机器人的运动范围矩阵中的路径图像渲染水位上升的泳池中游泳寻找图中是否存在路径所有可能的路径797.所有可能的路径力扣地址:https://leetcode.cn/problems/all-paths-from-source-to-target/这是一道比较典型的深度优先遍历、广度优先遍历案例,强烈推荐初学者完成这道题并且常常回来看看(也欢迎来看看我的博客~)难度:中等深度优先遍历广度优先遍历问题描述给你一个有n个节点的有向无环图(DAG),请你找出所有从节点0到节点n-1的路径并输出(不要求按特定顺序)graph[i]是一个从节点i可以访问的所有节点的列表(即从节点i到节点graph[
旅行商问题(TravelingSalesmanProblem,TSP)是指给定一个城市的集合以及每两个城市之间的距离,找到一条经过每个城市恰好一次且路径最短的回路。可以想象成一个旅行商要拜访多个城市,问他如何安排路线,使得行程最短。这个问题可能看起来简单,但是随着城市数量的增加,计算量将呈指数级增长,所以TSP被认为是一个复杂的组合优化问题,也是计算复杂度理论中的NP难题之一。ABCDEA04256B40323C23045D52403E63530现在需要求解旅行商问题,即从任意一个城市出发,恰好经过每个城市一次,最终回到出发城市,使得旅行路径总长度最短。图论求解:importnetworkxa
单源最短路的综合应用单源最短路的综合应用AcWing1135.新年好AcWing340.通信线路AcWing342.道路与航线AcWing341.最优贸易单源最短路的综合应用AcWing1135.新年好多次dijkstra求每个点到其它点的最短距离,此时相当于建好了一张图,每个点之间的最短距离都知道了,接下来dfs搜一下怎么走最短即可#include#include#includeusingnamespacestd;typedefpairint,int>PII;#definexfirst#defineysecondconstintN=5*1e4+10,M=2*1e5+10,INF=0x3f3f
负环负环AcWing904.虫洞AcWing361.观光奶牛AcWing1165.单词环负环本博客主要介绍spfa求负环一般用第二种方法第一种方法如果每个点入队n次,每次入队也要遍历n次,那么时间复杂度就是n2第二种方法时间复杂度是n,只要发现最短路边数>=n就说明有环了AcWing904.虫洞一篇很好的博客,介绍了求负环的常用方法和原理#include#includeconstintN=510,M=2*2500+200+10;usingnamespacestd;intdist[N];intq[N],cnt[N];boolst[N];inth[N],ne[M],e[M],w[M],idx;in