图论

上下界网络流总结

上下界网络流总结上下界网络流可以看做普通网络流的升级版,现在对于流量网络,我们不再只关注其流量的上界,而是同时关注流量的上下界。一、无源汇有上下界可行流这是上下界网络流中最简单的一种,给定一个没有源点和汇点、每条边的……

图的存储-邻接矩阵及C/++代码实现

图的存储-邻接矩阵及C/++代码实现1.什么是图图论(graphtheory)是数学的一个分支,它以图为研究的对象。图论本身是应用数学的一部分,历史上图论曾经被很多数学家各自独立建立过。关于图论的最早文字记载最早出现在欧拉1736年的论……

什么是虚树?

什么是虚树?当我们遇到一类频繁询问关键点信息的题目时,往往数据范围颇大,而对关键点总和有一定限制,此时我们可以建立虚树,将问题规模转化为关键点总和级别的。一、定义什么是虚树?当我们在树上有部分结点是无用的或用处不……

图文解析图论BFS(广度优先搜索)

图文解析图论BFS(广度优先搜索)BFS全称是BreadthFirstSearch,中文名是宽度优先搜索,也叫广度优先搜索。是图上最基础、最重要的搜索算法之一。所谓宽度优先。就是每次都尝试访问同一层的节点。如果同一层都访问完了,再访问……

欧拉图的判定

欧拉图的判定本篇将简要介绍欧拉图的概念、实现和应用,帮助大家在答题中更好的判定。一、定义圈:任选图中一个顶点为起点,沿着不重复的边,经过不重复的顶点为途径,之后又回到起点的闭合途径称为圈。欧拉路径:通过图中所有边……

最短路径,迪杰斯特拉(Dijkstra)算法及C/C++代码实现

最短路径,迪杰斯特拉(Dijkstra)算法及C/C++代码实现1.何为最短路径最短路径问题是图论研究中的一个经典算法问题,旨在寻找图(由结点和路径组成的)中两结点之间的最短路径,大致可以分为如下几种问题,可无论如何分类问题,其本质思想还是不变的,即,求两点间的最……

DFS求有向图(无向图)两点间路径

DFS求有向图(无向图)两点间路径本文会围绕算法中DFS求有向图或无向图两点间所有路径,先讲解DFS以及有向图或无向图的意思。有向图在图中的边是有方向的,表现出来就是有个箭头指示方向,节点只能单向通信或传递消息,相当于单行道,无向图边……

最小生成树图文解析

最小生成树图文解析最小生成树英文是MinimumSpanningTree,对于最小生成树大家应该都不陌生,当然还有最大生成树,首先就简单总结一下算法里的生成树。一、什么是生成树?Spanning有跨越的意思,生成树一般……

邻接表的定义及C/C++代码实现

邻接表的定义及C/C++代码实现1.邻接表概念邻接表(AdjacencyList)顾名思义,就是通过链表或者利用数组模拟链表的方式将图的相连接关系表示的一种方法,存储方法跟树的孩子链表示法相类似,是一种顺序分配和链式分配相结合的存储……

简述最大团搜索算法

简述最大团搜索算法一、引入在计算机科学中,团问题指的是在给定的图中找到团(顶点的子集,都彼此相邻,也称为完全子图)的计算问题。团的问题在现实生活中也有体现。例如我们考虑一个社交网络,其中图的点代表用户,图的边代表其所连……