随笔分类 - 数据结构
摘要:这题好妙啊,看讨论区很多做法,但我都不会^ ^ http://www.51nod.com/Question/Index.html#questionId=1542&isAsc=false 讨论区kczno1大佬的做法: dfs一遍,每个深度记每个字母的奇偶性,这个用一个二进制数就可以了。 然后对每个询
阅读全文
摘要:LCA裸题 只有代码无原理,给自己复习用 1. ST表(这题2^10就够了) 1 #include <bits/stdc++.h> 2 using namespace std; 3 4 const int maxn=2e3+50; 5 6 int cnt,dfn[maxn],dep[maxn],dp
阅读全文
摘要:一、dp(由于定义不同,有两种写法,其实dp太灵活了说有几种写法都不奇怪) 一种是记录以每个节点(u)为根,到其子树的最远叶节点的最大距离(dp[u][1])和次大距离(dp[u][0]); 这样以该节点为根的子树的直径即为dp[u][0]+dp[u][1], 对于每个节点取max即为全树的直径;
阅读全文
摘要:1、邻接矩阵 简单,开一个二维数组,pic[ i ] [ j ] = w 表示标号为 i 的顶点到标号为 j 的顶点有一条权值为 w 的有向边; 初始化:顶点自己到自己距离为0,不存在边设为inf; 2、邻接表 邻接表是一种对于每个顶点,用链表来存储以该点为起点的边的数据结构; 由定义知我们不需要再
阅读全文
摘要:就总结下写法吧老是忘啊属实dd 1.队列及相关操作 2.简单优先队列:默认降序队列 3.自定义优先队列 先把原型摆上: priority_queue<Type, Container, Functional> 简单(其实可以归到2里,不过为了对应这个原型还是放到这吧): 结构体:
阅读全文
摘要:1.前序遍历的规则:(根左右) (1)访问根节点 (2)前序遍历左子树 (3)前序遍历右子树 对于图中二叉树,前序遍历结果:ABDECF 2.中序遍历的规则:(左根右) (1)中序遍历左子树 (2)访问根节点 (3)中序遍历右子树 对于图中二叉树,中序遍历结果:DBEAFC 3.后序遍历二叉树的规则
阅读全文