19-大数据一班-杨文冠
19-大数据一班-杨文冠
全部文章
学习
未归档(1)
练习(1)
题解(137)
归档
标签
去牛客网
登录
/
注册
19-大数据一班-杨文冠的博客
啥都不会的小白
全部文章
/ 学习
(共23篇)
有向图的连通性
SCC指的是强连通分量,求SCC有三种高效的算法,即,他们的复杂度都是,但Kosaraju要差一点。 算法: hdu 1269 一个有向图,有n个点和m条边,判断整个图是否强连通,如果是输出,否则输出。手写一个栈,用的也行,我是用向前星存有向图。code: #include<bits/st...
Tarjan
2020-05-20
1
706
最短路练习
hdu 2433 好像是Dijkstra算法的变形,最短路生成树。 题意:我老是看不懂题目说什么,N个城镇,M条边,每条边的距离都是1(当然两个城镇之间可能有多条边,也可能没有边),求城镇i到城镇j的最短路之和,即∑i=1n(∑j=1ndis[j])\sum_{i=1}^{n}{ (\sum_{j...
最短路生成树
Dijkstra
SPFA
dp状态压缩
旅行商问题
2020-05-19
1
726
后缀数组练习
hdu 5769 题意:输入一个T,t组数据,每一组共两行,第一行是一个小写字母,第二行是仅由小写字母组成的字符串,问有多少种子串包含第一行的字符。比如的子串有。统计一个字符串有多少种子串也是后缀数组经典的应用。从文本串中提取子串可以分两步,先确定一个后缀,然后在后缀中确定前缀。比如1.确定后缀(...
后缀数组
2020-05-18
1
627
搜索
BFS: 1。双向广搜 hdu 1401 题意:一个8 x 8的棋盘,上面有4颗棋子,棋子可以上下左右移动。给定一个初始状态和一个目标状态,问能否在8步之内到达。棋子移动有两种方式:1.将一个棋子移动到一个空的相邻格子中。2.将一个棋子跳过一个相邻的棋子到一个空的格子中去。思路:1.从初始状态开...
BFS
2020-05-14
2
577
卡特兰数
hdu 5184 题目大意:一个n,然后一串括号,括号数量 大于0小于等于n,问你在给出了前 个括号的情况下,长度为n的规则括号序列有多少种。卡特兰数一眼题-----钟涛大佬。题目的输入不一定保证是规则括号序列,所以如果n是奇数或者存在右括号的数量多于左括号的数量,或者左括号的数量大于n的一半是一...
卡特兰数
逆元
2020-05-13
4
559
最小生成树
图的两个基本元素是点和边,与此对应,有两种方法可以构造最小生成树T。这两种算法都基于贪心算法,因为MST问题满足贪心算法的“最优性原理”,即全局最优包含局部最优。prim算法的原理是“最近的邻居一定在MST”上,kruskal算法的原理是“最短的边一定在MST上”。第一次出现kruskal算法或pr...
最小生成树
并查集
kruskal算法
贪心
prim算法
离线算法
最大生成树
次小生成树
2020-04-29
4
1146
并查集
并查集的基本操作:1.find,查询一个元素属于哪一个集合。2.merge 把两个集合合并成一个大集合,一般不用写一个额外的函数,直接写主函数内就可以了。在并查集中,我们采用“待元法”,即为每个集合选择一个固定的元素,作为整个集合的“代表”。使用一个树形结构存储每个集合,书上每个结点都是一个元素,树...
并查集
2020-04-27
3
710
线段树中等题
hdu 1540 题意:1-n个地道,m个次操作,D代表摧毁第i个地道,Q代表查询包含第i个地道的最大连续地道数目,并输出。R代表修复最近摧毁的那个地道。思路:(线段树&区间合并&最大连续区间)充分利用了线段树相邻结点之间的区间都是连续的性质,x[rt]表示这个区间从左边起的连续区...
线段树
2020-04-26
1
581
线段树简单题
hdu 1166 思路:点修改+区间求和,数组实现线段树。提交hdu时注意把模板的update改成add(改别的或不改都行,一提交就网页丢失就改这里)。可用树状数组实现。 Code: #include<bits/stdc++.h> #define js ios::sync_with...
线段树
二维线段树
2020-04-24
4
619
线段树+树状数组
poj 2182 线段树代码: (1.普通二叉树,0ms) #include<stdio.h> struct { int l,r,len; }tree[8005<<2]; int pre[8005],ans[8005]; void buildtree(int left...
树状数组
线段树
2020-04-19
1
556
首页
上一页
1
2
3
下一页
末页