搜素
文章平均质量分 55
qq_41818544
学会坚强,一生荣光
展开
-
连通图的判断(并查集, DFS, BFS)
首先要明确什么是连通图???连通图:对于一个图来说,图中的任意一个点都能访问到所有的点,则说明该图连通 很明显,如果要判断一个图是否连通,则必须要从任意一个搜索一遍,判断是否到达了所有的点,则很快会想到DFS和BFS。但是用并查集去判断是否连通,这种思想去确实没有想到。如果用并查集来判断确实可以加快速度。让自己对并查集又有了新的认识。同时并查集还可以判断一个图是否形成自回路。...原创 2018-11-06 16:40:36 · 2893 阅读 · 0 评论 -
部分和问题 (dfs搜索 尺取)
部分和问题给定整数a1, a2, a3, a4, .......... , an ,判断是否可以从中取出若干个数,使得他们的和恰好为k 。1 <= n <= 20测试数据:n = 4 a[] = {1, ...原创 2018-11-05 19:33:39 · 122 阅读 · 0 评论 -
用水填坑 (牛客)
https://ac.nowcoder.com/acm/contest/403/A解析:该题很明显是一道搜索题。首先我们必须明确在什么情况下会形成水洼:即当某一点的高度小于等于( <= )上下左右四个方向时,会形成水洼。 该题是要计算形成水洼的面积,那么我们的某一块最大存水量一定是四个方向上最小的高度。第一次的写法:只是使用深搜去枚举每一个点,但写完发现...原创 2019-03-23 08:43:37 · 367 阅读 · 0 评论 -
求连通块个数(使用并查集)
并查集求连通块个数的模板#include<bits/stdc++.h>using namespace std;const int maxn = 1e5+5;vector<int>G[maxn];bool isRoot[maxn] = {false};int pre[maxn];void init(int n){ for(int i = 0...原创 2019-09-26 21:01:41 · 463 阅读 · 0 评论