二叉树
Dyson~
小小黑
展开
-
LeetCode 236 -- 二叉树的最近公共祖先 ( Lowest Common Ancestor of a Binary Tree ) ( C语言版 )
题目描述 : 方法一:代码如下(附有解析):/** * Definition for a binary tree node. * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */struct TreeNode* Fi...原创 2018-09-16 17:57:32 · 421 阅读 · 0 评论 -
LeetCode 235--二叉搜索树的最近公共祖先 ( Lowest Common Ancestor of a Binary Search Tree ) ( C语言版 )
题目描述 : 解题思路 : 根据题目描述 , 会发现共同祖先要么是根节点 , 要么是左节点 ,要么是右节点 , 当给定的两个节点都大于根节点时 , 往右子树寻找 , 当两个节点都小于根节点时 , 往左子树寻找 ;代码如下 : /** * Definition for a binary tree node. * struct TreeNode { * int val;...原创 2018-09-16 17:25:18 · 505 阅读 · 0 评论 -
LeetCode--对称二叉树 ( Symmetric Tree ) ( C语言版 )
对称二叉树 : 给定一个二叉树,检查它是否是镜像对称的。思路 : 根据对称二叉树的特性, 可以使用递归去求解, 这里只需要判断左孩子的左边和右孩子的右边 或者 左孩子的右边和右孩子的左边是否相等或为空即可;代码如下 : /** * Definition for a binary tree node. * struct TreeNode { * int val; *...原创 2018-09-01 19:07:41 · 1210 阅读 · 0 评论 -
LeetCode--110 平衡二叉树 ( Balanced Binary Tree )( C语言版 )
题目描述 :方法一:需要重复遍历节点多次解法,当遍历到一个节点时就将左右子树的的深度计算出来,然后判断是否满足条件/** * Definition for a binary tree node. * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *rig...原创 2018-10-07 15:30:39 · 514 阅读 · 0 评论 -
LeetCode--105 从前序与中序遍历序列构造二叉树 (Construct Binary Tree from Preorder and Inorder Traversal)(C语言版)
题目描述:解题思路:通过先序遍历来确定每次所要创建的根节点 通过 i 来将中序遍历的区间不断划分为左右区间 再分别在左右区间中继续执行上述步骤代码如下:/** * Definition for a binary tree node. * struct TreeNode { * int val; * struct TreeNode *left;...原创 2018-10-08 16:40:20 · 339 阅读 · 0 评论