图解 二叉树的四种遍历 LeetCode 题目中,二叉树的遍历方式是最基本,也是最重要的一类题目,我们将从「前序」、「中序」、「后序」、「层序」四种遍历方式出发,总结他们的递归和迭代解法。 题目说明 这里是 4 道相关题目: 144.二叉树的前序遍历 94. 二叉树的中序遍历 145. 二叉树的后序 ...
分类:
其他好文 时间:
2020-07-22 01:49:52
阅读次数:
113
给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。 示例: 二叉树:[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回其层次遍历结果: [ [3], [9,20], [15,7] ] class Solution( ...
分类:
其他好文 时间:
2020-07-19 13:49:57
阅读次数:
77
102-二叉树的层序遍历 给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。 题目分析 此题类似于《剑指offer》的第32题 层序遍历二叉树是指对二叉树每一层从左到右进行访问。 非叶子节点 对于每一层的非叶子节点,都有两个子节点。在层序遍历时,上一层非叶子 ...
分类:
其他好文 时间:
2020-07-17 16:15:17
阅读次数:
50
题目的要求,大白话说就是:把指针指向同层的右侧节点 提到同层,自然就要想到层序遍历,自然是队列实现 问题是需要分层 所以采用之前题目用的那种计数的方式 class Solution { public Node connect(Node root) { if(root==null) {return r ...
分类:
其他好文 时间:
2020-07-13 18:42:31
阅读次数:
79
BFS和DFS DFS遍历使用递归(隐式使用栈): void dfs(TreeNode root) { if (root == null) { return; } dfs(root.left); dfs(root.right); } BFS遍历使用队列 void bfs(TreeNode root) ...
分类:
其他好文 时间:
2020-07-12 22:04:02
阅读次数:
66
题目描述链接:https://leetcode-cn.com/problems/binary-tree-level-order-traversal/ 解题思路:参考官方题解,解题思路如下:对于二叉树的层序遍历,首先应该考虑到的数据结构便是队列,利用队列现进先出的特性,可以很方便的解决此题。 (1)根 ...
分类:
其他好文 时间:
2020-07-12 20:29:04
阅读次数:
65
C++小白所作...单纯记录一下自己刷力扣的学习心得 树_第4题:二叉树的层序遍历 题目描述: 给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。 举例: 示例:二叉树:[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 ...
分类:
编程语言 时间:
2020-07-12 01:05:35
阅读次数:
112
1.层序遍历,一个队列存放节点,一个队列存放到当前节点的值。 2.递归 /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * ...
分类:
编程语言 时间:
2020-07-07 16:00:52
阅读次数:
49
101. 对称二叉树 描述: 思路: 递归。考虑左子树的最右节点和右子树的最左节点对称。 102. 二叉树的层序遍历 描述: 思路:递归。维护一个List<List<Node>> (List.get(迭代次数).add(xxxx)) 103. 二叉树的锯齿形层次遍历 描述: 思路:递归。先右再左。 ...
分类:
其他好文 时间:
2020-07-05 22:45:46
阅读次数:
58
题目信息 时间: 2019-07-04 题目链接:Leetcode tag: 二叉树 层序遍历 后序遍历 难易程度:简单 题目描述: 输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。 示例: 给定二叉树 [3,9,20, ...
分类:
其他好文 时间:
2020-07-05 17:35:56
阅读次数:
68