二叉树
Saulty
这个作者很懒,什么都没留下…
展开
-
LeetCode 572. 另一棵树的子树
LeetCode 572. 另一棵树的子树题目题解代码题目题解注意是所有后代节点不是包含关系代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNo原创 2021-08-13 13:43:39 · 76 阅读 · 0 评论 -
LeetCode 117. 填充每个节点的下一个右侧节点指针 II
LeetCode 117. 填充每个节点的下一个右侧节点指针 II题目题解代码题目题解二叉树层次遍历用变量n记录队列的长度代码/*// Definition for a Node.class Node {public: int val; Node* left; Node* right; Node* next; Node() : val(0), left(NULL), right(NULL), next(NULL) {} Node(i原创 2021-08-13 13:43:11 · 57 阅读 · 0 评论 -
LeetCode 112. 路径总和
LeetCode 112. 路径总和题目题解代码题目题解递归+深度优先遍历广度优先遍历代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNode原创 2021-07-29 13:24:01 · 51 阅读 · 0 评论 -
LeetCode 226. 翻转二叉树
LeetCode 226. 翻转二叉树题目题解代码题目题解递归,深度优先遍历广度优先遍历代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNod原创 2021-07-29 13:23:46 · 42 阅读 · 0 评论 -
LeetCode 101. 对称二叉树
LeetCode 101. 对称二叉树题目题解代码题目题解层次遍历树将树的每一层放在一个数组中,进行对比注意对于空节点,用100000代替递归对于两个节点,判断其值是否相等,其左节点和另右节点是否相等,其右节点和另左节点是否相等代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; *原创 2021-07-28 12:06:53 · 44 阅读 · 0 评论 -
LeetCode 104. 二叉树的最大深度
LeetCode 104. 二叉树的最大深度题目题解代码题目题解树的层次遍历添加代表层数的参数,每次循环层数加1递归考虑递归之间的关系某节点的最大深度=max(其左节点的最大深度,其右节点的最大深度)+1代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNod原创 2021-07-28 12:06:17 · 56 阅读 · 0 评论 -
LeetCode 102. 二叉树的层序遍历
LeetCode 102. 二叉树的层序遍历题目题解代码题目题解队列每一层通过queue的长度来决定for循环注意二维数组的赋值res.push_back(vector())res.back().push_back()代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; *原创 2021-07-28 12:05:28 · 55 阅读 · 0 评论 -
LeetCode 145. 二叉树的后序遍历
LeetCode 145. 二叉树的后序遍历题目题解代码题目题解递归迭代模板代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNode(int原创 2021-07-27 15:09:18 · 55 阅读 · 0 评论 -
LeetCode 94. 二叉树的中序遍历
LeetCode 94. 二叉树的中序遍历题目题解代码题目题解递归迭代模板代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNode(int x原创 2021-07-27 15:08:56 · 48 阅读 · 0 评论 -
LeetCode 144. 二叉树的前序遍历
LeetCode 144. 二叉树的前序遍历题目题解代码题目题解参考:https://leetcode-cn.com/problems/binary-tree-preorder-traversal/solution/tu-jie-er-cha-shu-de-si-chong-bian-li-by-z1m/递归迭代+栈迭代模板代码/** * Definition for a binary tree node. * struct TreeNode { * int val原创 2021-07-27 15:08:33 · 49 阅读 · 0 评论 -
LeetCode 116. 填充每个节点的下一个右侧节点指针
LeetCode 116. 填充每个节点的下一个右侧节点指针题目题解代码题目给定一个 完美二叉树 ,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下:struct Node {int val;Node *left;Node *right;Node *next;}填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为 NULL。初始状态下,所有 next 指针都被设置为 NULL。进阶:你只能使用常量级额外空原创 2021-07-11 14:46:11 · 67 阅读 · 1 评论 -
LeetCode 617. 合并二叉树
LeetCode 617. 合并二叉树题目题解代码题目给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。示例 1:输入:Tree 1 Tree 21 2/ \ / \3原创 2021-07-11 14:45:18 · 58 阅读 · 0 评论