2020年11月2日
摘要: 从中序与后序遍历序列构造二叉树 题目: 根据一棵树的中序遍历与后序遍历构造二叉树。 注意: 你可以假设树中没有重复的元素。 例如,给出 中序遍历 inorder = [9,3,15,20,7] 后序遍历 postorder = [9,15,7,20,3] 返回如下的二叉树: 解题思路:和从前序与中序 阅读全文
posted @ 2020-11-02 15:50 KobeSacre 阅读(165) 评论(0) 推荐(0)
摘要: 从前序与中序遍历序列构造二叉树 题目: 根据一棵树的前序遍历与中序遍历构造二叉树。 注意: 你可以假设树中没有重复的元素。 例如,给出 前序遍历 preorder = [3,9,20,15,7] 中序遍历 inorder = [9,3,15,20,7] 返回如下的二叉树: 解题思路:前序数组的第一个 阅读全文
posted @ 2020-11-02 15:15 KobeSacre 阅读(106) 评论(0) 推荐(0)
摘要: 最大二叉树 题目: 给定一个不含重复元素的整数数组。一个以此数组构建的最大二叉树定义如下: 二叉树的根是数组中的最大元素。 左子树是通过数组中最大值左边部分构造出的最大二叉树。 右子树是通过数组中最大值右边部分构造出的最大二叉树。 通过给定的数组构建最大二叉树,并且输出这个树的根节点。 示例 : 输 阅读全文
posted @ 2020-11-02 14:27 KobeSacre 阅读(123) 评论(0) 推荐(0)
摘要: 填充每个节点的下一个右侧节点指针 题目:给定一个完美二叉树,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下: struct Node { int val; Node *left; Node *right; Node *next; } 填充它的每个 next 指针,让这个指针指向其 阅读全文
posted @ 2020-11-02 11:44 KobeSacre 阅读(54) 评论(0) 推荐(0)
摘要: 二叉树展开为链表 题目: 给定一个二叉树,原地将它展开为一个单链表。 例如,给定二叉树 将其展开为: 解题思路:运用前序遍历将节点添加进list中,然后遍历list改变每一个节点的左右节点 /** * Definition for a binary tree node. * public class 阅读全文
posted @ 2020-11-02 10:42 KobeSacre 阅读(100) 评论(0) 推荐(0)
摘要: 翻转二叉树 题目: 翻转一棵二叉树。 示例: 输入: 输出: 解题思路:运用递归从上至下进行翻转 /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * Tree 阅读全文
posted @ 2020-11-02 10:22 KobeSacre 阅读(63) 评论(0) 推荐(0)