1、判断有向图有无(负)环时要每个点遍历,因为会有数据起点与环不连通
2、写SPFA不要忘了visit数组的改写
3、判断有向图负环用DFS的SPFA,求最短路用BFS的SPFA
4、使用G[i][j]时要判断连通
5、并查集只能求无向图的强连通分量,有向图要用Tarjan
6、树状数组不要出现0下标
7、树状数组add是+,sub是-
8、二维树状数组求子矩阵的和,减去多余部分时,不能减到这个子矩阵的边缘
9、看好数据范围再来做题
10、一些给出的数据如时间轴不一定有序,要事先排序
11、背包枚举容量时记得判断容量是否大于物品重量
12、有时候将正数变为负数是非常灵活好用的
13、如果是森林,可以用一个结点连接森林中各树的根节点,把它变成一棵树
14、如果数据规模非常大,而有一个数据非常小,那么一定是从这个数据入手做题
15、看清题目的要求,特别是DP,要看清楚转移的情况
16、搜索回溯的时候不要在过程头标记已访问
17、看清题目的Mod,有些要中途mod
18、求质数等要用sqrt
19、不要轻视水题!往往就是水题坑人
20、在想求最小值时可以用堆
21、需要反向边时直接在读入时处理就行了
22、搜索时尽量不要无标记地搜索,否则A->B和B->A这样的数据会死循环
23、静态查错特别重要,有空还要重新读题检测细节
24、有向有环图要变为有向无环图(无根树),要进行缩点