图论
yqcr
这个作者很懒,什么都没留下…
展开
-
无向图三元环计数 (思维,图论)
题目链接思路:看完这题第一眼思路是直接枚举两条邻边(m^2),但一看数据范围2e5便知道这个办法不可行,于是考虑将图简化。简化方法:将原图中度数小的点向度数大的点连一条有向边,如果度数相同便从编号小的向编号大的连边,可以发现这样简化完后的新图是一个DAG(因为如果要成还的话环里的边必然有一条是从度数大的连向度数小的,或者从编号大的连向编号小的,与规则矛盾),而原图中的每个三元环(u,v,w)在新图中一定有一个(u->v,u->w,v->w)的子图与之相对应,我们只需要在新图中枚举每个原创 2021-06-26 10:40:34 · 561 阅读 · 0 评论 -
链式前向星+单源最短路径(dijkstra)
一个因为邻接表写的太复杂而弃坑转向链式前向星的蒟蒻,不过虽然链式前向星的名字很鬼畜但存图效果是真的可以。链式前向星其实原理和邻接表差不多只不过前者用数组来连接后者用指针而已。链式前向星结构体内容:struct l{ int next;//存储与该边同起点的边的编号 int to;//当前边的终点的顶点下标 int w;//当前边的边权值}edge[500005];...原创 2020-03-19 22:50:06 · 872 阅读 · 3 评论 -
邻接表到邻接矩阵 swust oj#1056
最近感觉自己基础太差存图除了二维矩阵就不会用别的了,二维矩阵又很容易MLE,恶补邻接表。自己写的邻接表,没看板子,反正能过,以后就用它了。附代码:#include <bits/stdc++.h>using namespace std;typedef struct l{ int point ; l* next;}dlb;struct node{ dlb...原创 2020-03-18 21:47:33 · 690 阅读 · 0 评论 -
邻接矩阵转邻接表 swust oj#1055
题目链接说实话能写出来我都惊了,因为我就看了一眼原理,然后想打个草稿,居然还过了。。。。以上是废话。。。正文:邻接矩阵顾名思义就是用矩阵来存图(一般是二维),但当维数过多会容易MLE,而且对于稀疏图(点多边少)用邻接矩阵来存无疑很浪费空间,所以邻接表应运而生。邻接表适用于稀疏图而不适用于稠密图(点少边多)如图所示:邻接表就是每个顶点创建一个单链表来存顶点的边,如图中A与C(2),D(...原创 2020-03-17 20:51:14 · 686 阅读 · 0 评论 -
选数 (dfs)
看了题懵了会儿(菜鸡的日常),有回溯的味道但又不是全排列,然后既然不是回溯还能干嘛只能用最朴素的dfs了,维护每次dfs的起点就完了。附代码:#include <iostream>#include <bits/stdc++.h>using namespace std;int A[10005]; int B[10005]; int n,m; int k=0;bo...原创 2020-03-07 22:43:45 · 310 阅读 · 0 评论 -
判断给定有向图是否存在回路 swust oj #1076
拓扑排序判断,相关解释在代码中就不多赘述了。#include <iostream>#include <vector>#include <queue>using namespace std;vector<int> m;queue<int> n,s;int A[1005][1005];int B[1005];int main...原创 2020-03-05 13:11:02 · 1058 阅读 · 0 评论 -
二叉排序树的实现和查找 swust oj#1011
二叉排序树就是插入值比当前节点小的就往当前节点的左子树递归,比当前节点大的就往当前节点的右子树递归,若遇到空节点(即不能比较下去)就在这个位置建立新节点节点值为插入值。附代码:#include <iostream>using namespace std;typedef struct l{ int val; struct l* lchild,* rchild;}...原创 2020-03-05 12:54:54 · 658 阅读 · 0 评论 -
Satellite Photographs (bfs 水题)swust oj #1
深搜,广搜都行啊,随便用,反正边遍历边比较找出连通的*的最大数量就行#include <iostream>#include <queue>#include <algorithm>using namespace std;char A[1005][1005];bool vis[1005][1005];int B[4][2]={{0,1},{0,-1},...原创 2020-03-05 12:30:07 · 265 阅读 · 0 评论