- 博客(4)
- 收藏
- 关注
原创 Tarjan算法之求强连通分量
最近又学习了强连通分量的Tarjan求法,先是看了别人的许多博客,才勉勉强强看懂,自己写完博客后感到十分显然,也没有表面上看的那么高大上。好了,转入正题,先说说什么是强连通分量:有向图强连通分量:在有向图G中,如果两个顶点vi,vj间(vi>vj)有一条从vi到vj的有向路径,同时还有一条从vj到vi的有向路径,则称两个顶点强连通(strongly connected)。如果有向图G...
2018-08-29 20:45:24
440
原创 树状数组初步
有一句俗话说的好,线段树是万能的,但能用树状数组的坚决不用线段树。这句话很好地体现了树状数组的优越性,我们来了解一下树状数组这种神奇的数据结构。树状数组,顾名思义,就是一棵长得像树的数组,我们首先来看一下树状数组的结构 ,下面是一幅很经典的图。a数组为原数组,c为树状数组,这是一个非常显然的树结构,类似于前缀和的二分结构,不管怎么说,反正这就是一个很优美的数据结构,操作起来比线段树方便的多...
2018-07-30 16:07:53
154
原创 线段树基本操作
自己以前学了线段树,感到很懵逼,大概用了一个月的时间才能熟练地打出模板。现在看来,线段树是万能的,这是一个不可不学的数据结构,线段树的应用范围,很广尽管写起来稍微有点烦,代码稍微长了一点。线段树,顾名思义,就是一棵由线段组成的树他利用了二分的思想,将一个线段以递归的形式二分下去,形成了一棵二叉树。下面是一棵线段树的模型(本人喜欢左右都闭):以求和为例,(朴素易懂)代码如下:s...
2018-07-15 20:28:33
275
原创 C++常见错误
很多人在编程时会遇到一些奇奇怪怪的错误。我们就来讲一下一些神奇的错误(本人亲身经历)。#include<bits/stdc++.h>using namespace std;const int dx[9]={0,-1,-1,-1,0,0,1,1,1};const int dy[9]={0,-1,0,1,-1,1,-1,0,1};int a[15][15];int n,tot=0...
2018-07-09 10:16:21
809
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人