【算法刷题笔记】144. 二叉树的前序遍历,145. 二叉树的后序遍历,94. 二叉树的中序遍历,102. 二叉树的层序遍历
144. 二叉树的前序遍历 题目描述 给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 示例 1: 输入: root = [1,null,2,3] 输出: [1,2,3] 示例 2: 输入: root = [1,2,3,4,5,null,8,null,null,6,7,9] 输出: [1,2,4,5,6,7,3,8,9] 示例 3: 输入: root = [] 输出: [] 示例 4: 输...
【Leetcode Top 100】94. 二叉树的中序遍历
[0, 100] [0,100] 内 − 100 ≤ N o d e . v a l ≤ 100 -100 \le Node.val \le 100 −100≤Node.val≤100 解题过程 中序遍历,二叉树的基本操作。 递归的方法是先递归左子树,访问当前节点,然后访问右子树即可。 非递归的方法是在左子树非空的情况下,不断地往左子树遍历,沿途用栈来记录节点。一旦左子树为空,那么应当访问当前栈中的第...
【LeetCode: 590. N 叉树的后序遍历 + DFS】
🍔 目录 🚩 题目链接⛲ 题目描述🌟 求解思路&实现代码&运行结果⚡ DFS🥦 求解思路🥦 实现代码🥦 运行结果 💬 共勉 🚩 题目链接 590. N 叉树的后序遍历 ⛲ 题目描述 给定一个 n 叉树的根节点 root ,返回 其节点值的 后序遍历 。 n 叉树 在输入中按层序遍历进行序列化表示,每组子节点由空值 null 分隔(请参见示例)。 示例 1: 输入:root = [1,null,3,2,...
【LeetCode: 105. 从前序与中序遍历序列构造二叉树 + DFS】
🍔 目录 🚩 题目链接⛲ 题目描述🌟 求解思路&实现代码&运行结果⚡ DFS🥦 求解思路🥦 实现代码🥦 运行结果 💬 共勉 🚩 题目链接 105. 从前序与中序遍历序列构造二叉树 ⛲ 题目描述 给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。 示例 1: 输入: preorder ...
LeetCode 250. Count Univalue (二叉树后序遍历好题)
LeetCode 250. Count Univalue Given a binary tree, count the number of uni-value subtrees. A Uni-value subtree means all nodes of the subtree have the same value. Example : Input: root = [5,1,5,5,5,null,...
【LeetCode: 103. 二叉树的锯齿形层序遍历 + BFS】
🍔 目录 🚩 题目链接⛲ 题目描述🌟 求解思路&实现代码&运行结果⚡ BFS🥦 求解思路🥦 实现代码🥦 运行结果 💬 共勉 🚩 题目链接 103. 二叉树的锯齿形层序遍历 ⛲ 题目描述 给你二叉树的根节点 root ,返回其节点值的 锯齿形层序遍历 。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。 示例 1: 输入:root = [3,9,20,null,null,15,7...
【LeetCode: 429. N 叉树的层序遍历 + BFS】
🍔 目录 🚩 题目链接⛲ 题目描述🌟 求解思路&实现代码&运行结果⚡ BFS🥦 求解思路🥦 实现代码🥦 运行结果 💬 共勉 🚩 题目链接 429. N 叉树的层序遍历 ⛲ 题目描述 给定一个 N 叉树,返回其节点值的层序遍历。(即从左到右,逐层遍历)。 树的序列化输入是用层序遍历,每组子节点都由 null 值分隔(参见示例)。 示例 1: 输入:root = [1,null,3,2,4,null,5,...
【算法题】102. 二叉树的层序遍历
题目 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 示例 1: 输入:root = [3,9,20,null,null,15,7] 输出:[[3],[9,20],[15,7]] 示例 2: 输入:root = [1] 输出:[[1]] 示例 3: 输入:root = [] 输出:[] 提示: 树中节点数目在范围 [0, 2000] 内 -1000 <...
105. 从前序与中序遍历序列构造二叉树 --力扣 --JAVA
题目 解题思路 先序遍历:根左右;中序遍历:左根右;从先序遍历中确定根节点,再从中序遍历中判断左右子树的长度范围,从而确定左右子树的根节点。 代码展示 class Solution { public TreeNode buildTree(int[] preorder, int[] inorder) { int size = preorder.length; Map<Integer,Integer> st...
【LeetCode刷题-树】--144.二叉树的前序遍历
144.二叉树的前序遍历 /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeNode(int val) { this.val = val; } * TreeNode(int val, ...