树状结构
Freeman Z
都柏林理工大学博士录取
巴黎高等电子学院工程师录取
李莫瑞克大学硕士在读(主持爱尔兰软件研究中心)
重庆2022优秀毕业生
展开
-
[AcWing]846. 树的重心
算法标签 dfs,树形DP 题目简叙 思路 每次寻找删除节点之后的剩余联通块最大节点 代码 #include<iostream> #include<cstring> using namespace std; const int N=1e5+10; int h[N],e[2*N],ne[2*N],idx; //h头节点 //e元素 双向图 两倍数据 //ne指针 //idx下标 int ans=N; //ans初始化节点数量N个 bool st[N]; //布尔数组,控制是否原创 2020-08-03 21:34:50 · 219 阅读 · 0 评论 -
[LeetCode]剑指 Offer 55 - I. 二叉树的深度
算法标签 DFS,树 题目简叙 思路 3(3) / \ 9(2) 20(2) / \ 15(1) 7(1) 递归到底部,记录并回溯检查最高高度 代码 /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int原创 2020-08-03 01:36:49 · 164 阅读 · 0 评论 -
[LeetCode]114. 二叉树展开为链表
算法标签:链表 题目简叙 代码 /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNode(int x) : val(x), left(nullptr), righ原创 2020-08-02 23:35:30 · 144 阅读 · 0 评论 -
[LeetCode]104. 二叉树的最大深度
题目来源 LeetCode 算法标签 二叉树,bfs,dfs 题目描述 思路 dfs手动+1表示层数 bfs利用队列模仿一层一层累加 AC代码 dfs /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NU原创 2020-05-17 15:00:40 · 143 阅读 · 0 评论 -
[LeetCode]5398. 统计二叉树中好节点的数目
题目来源 LeetCode20200517双周赛 算法标签 二叉树,树状结构 题目描述 思路 这里的思路很显然,我们需要左右子路径全部走一遍 1.如果下一个大于等于路径上的最大值就ans++ 2.我们要注意最大值的保存,所以必须自己生成一个自定义函数用参数进行存储 AC代码 /** /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * Tree原创 2020-05-17 00:40:38 · 147 阅读 · 0 评论