题目: 示例: 输入: 4 / \ 2 7 / \ / \ 1 3 6 9 输出: 4 / \ 7 2 / \ / \ 9 6 3 1 解题思路: 因为树具有天然的递归结构,关于树的问题,我们常用递归来实现。 翻转二叉树,我们首先判断如果反转一颗空树结果还是一颗空树。 如果不是空树,就将父节点的左右 ...
分类:
其他好文 时间:
2020-07-13 11:30:50
阅读次数:
54
[抄题]: Invert a binary tree. Example: Input: 4 / \ 2 7 / \ / \ 1 3 6 9 Output: 4 / \ 7 2 / \ / \ 9 6 3 1 [暴力解法]: 时间分析: 空间分析: [优化后]: 时间分析: 空间分析: [奇葩输出条件 ...
分类:
其他好文 时间:
2020-05-23 10:03:40
阅读次数:
49
#include <bits/stdc++.h> #include <stdio.h> #include <stdlib.h> #include <queue> using namespace std; const int maxn = 110; struct node{ int lchild,rc ...
分类:
其他好文 时间:
2020-01-24 17:25:43
阅读次数:
78
二叉树的实现(补充) 本次实现的二叉树包括二叉树的先序遍历,中序遍历和后序遍历以及二叉树的层序遍历,还包括二叉树的高度,叶子节点以及反转二叉树 二叉树的层序遍历依然是使用Python内置的deque实现一个队列,根据队列先进先出(FIFO)的性质,先把二叉树的根节点放入队列中,判断队列是否为空,如果 ...
分类:
其他好文 时间:
2019-08-25 14:05:08
阅读次数:
87
反转二叉树 java实现 描述 实现二叉树的反转 示例: 原二叉树: 解析 递归 1.判断根是否为空,根为空直接返回根;否则继续;2.递归反转根的左右子树 非递归 1.判断根是否为空,根为空直接返回根;否则继续;2.交换根节点的左右子节点;3. 交换第二层结点的左右子树;4 重复下去,最后一个结点。 ...
分类:
其他好文 时间:
2019-04-18 00:40:25
阅读次数:
200
[抄题]: Given a binary tree where all the right nodes are either leaf nodes with a sibling (a left node that shares the same parent node) or empty, flip ...
分类:
其他好文 时间:
2018-07-27 13:16:32
阅读次数:
112
1、题目描述 经典的反转二叉树,就是将二叉树中每个节点的左、右儿子交换。 2、题目分析 3、代码 ...
分类:
其他好文 时间:
2018-04-01 16:05:26
阅读次数:
166
#include <stdio.h> #include <memory.h> #include <math.h> #include <string> #include <vector> #include <set> #include <stack> #include <queue> #include ...
分类:
其他好文 时间:
2018-01-04 00:25:46
阅读次数:
155
Invert a binary tree. 4 / \ 2 7 / \ / \ 1 3 6 9 to 4 / \ 7 2 / \ / \ 9 6 3 1 Trivia:This problem was inspired by this original tweet by Max Howell: Go ...
分类:
其他好文 时间:
2017-07-05 00:32:02
阅读次数:
241