题目来源:leetcode226 翻转二叉树 题目描述: 翻转一棵二叉树。 解题思路 递归 /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *ri ...
分类:
其他好文 时间:
2020-07-07 10:00:25
阅读次数:
51
构建一颗二叉树,以列表形式打印 public class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int val){ this.val = val; } } import java.util.ArrayList;impo ...
分类:
其他好文 时间:
2020-07-07 00:00:49
阅读次数:
113
题目: 求给定的二叉树的前序遍历。 例如: 给定的二叉树为{1,#,2,3}, 1 2 / 3 返回:[1,2,3] 代码: 1 /** 2 * struct TreeNode { 3 * int val; 4 * struct TreeNode *left; 5 * struct TreeNode ...
分类:
其他好文 时间:
2020-07-06 17:50:18
阅读次数:
44
问题来源: 在写二叉树序列化与反序列化时发现序列化函数为char* Serialize1(TreeNode *root) 其函数返回类型为char*,但是我在实现的过程中为了更方便的操作添加字符串使用的是C++中string类型的变量,这就导致我最后得到的结果res是string类型,若是要返回需要 ...
分类:
编程语言 时间:
2020-07-06 00:58:48
阅读次数:
74
public final boolean isSubPath(ListNode head, TreeNode root) { if (root == null) { return false; } Stack<TreeNode> stack = new Stack<TreeNode>(); stac ...
分类:
其他好文 时间:
2020-07-05 23:20:05
阅读次数:
68
问题描述 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。” 例如,给定如下二叉树: root = [3 ...
分类:
其他好文 时间:
2020-07-05 18:56:51
阅读次数:
42
# Definition for a binary tree node.class TreeNode: def __init__(self, x): self.val = x self.left = None self.right = Nonea = TreeNode(1)b = TreeNode( ...
分类:
其他好文 时间:
2020-07-03 21:20:02
阅读次数:
56
将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树 时间复杂度:O(n) n为数组长度 空间复杂度:O(logn) class TreeNode: def __init__(self, x): self.val = x self.left = None self.right = None c ...
分类:
编程语言 时间:
2020-07-03 12:23:57
阅读次数:
63
题目描述 输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) 解析 解答 1 /** 2 public class TreeNode { 3 int val = 0; 4 TreeNode left = null; 5 TreeNode right = nul ...
分类:
其他好文 时间:
2020-07-02 18:10:47
阅读次数:
48
不是我自己写出来的,思想大概是懂的,没自己写,看了别人的代码; public List<TreeNode> generateTrees(int n) { if(n == 0){ return new LinkedList<>(); } return generate_trees(1,n); } pr ...
分类:
其他好文 时间:
2020-07-01 22:03:33
阅读次数:
61