更新 0226.翻转二叉树 排版格式修复

This commit is contained in:
jinbudaily
2023-07-21 14:19:58 +08:00
parent 8e34d5ff57
commit 1abe3506ea

View File

@ -16,7 +16,11 @@
这道题目背后有一个让程序员心酸的故事,听说 Homebrew的作者Max Howell就是因为没在白板上写出翻转二叉树最后被Google拒绝了。真假不做判断权当一个乐子哈 这道题目背后有一个让程序员心酸的故事,听说 Homebrew的作者Max Howell就是因为没在白板上写出翻转二叉树最后被Google拒绝了。真假不做判断权当一个乐子哈
# 题外话 ## 算法公开课
**[《代码随想录》算法视频公开课](https://programmercarl.com/other/gongkaike.html)[听说一位巨佬面Google被拒了因为没写出翻转二叉树 | LeetCode226.翻转二叉树](https://www.bilibili.com/video/BV1sP4y1f7q7),相信结合视频再看本篇题解,更有助于大家对本题的理解**。
## 题外话
这道题目是非常经典的题目,也是比较简单的题目(至少一看就会)。 这道题目是非常经典的题目,也是比较简单的题目(至少一看就会)。
@ -24,9 +28,7 @@
如果做过这道题的同学也建议认真看完,相信一定有所收获! 如果做过这道题的同学也建议认真看完,相信一定有所收获!
# 思路 ## 思路
《代码随想录》算法视频公开课:[听说一位巨佬面Google被拒了因为没写出翻转二叉树 | LeetCode226.翻转二叉树](https://www.bilibili.com/video/BV1sP4y1f7q7),相信结合视频在看本篇题解,更有助于大家对本题的理解。
我们之前介绍的都是各种方式遍历二叉树,这次要翻转了,感觉还是有点懵逼。 我们之前介绍的都是各种方式遍历二叉树,这次要翻转了,感觉还是有点懵逼。
@ -49,7 +51,7 @@
那么层序遍历可以不可以呢?**依然可以的!只要把每一个节点的左右孩子翻转一下的遍历方式都是可以的!** 那么层序遍历可以不可以呢?**依然可以的!只要把每一个节点的左右孩子翻转一下的遍历方式都是可以的!**
## 递归法 ### 递归法
对于二叉树的递归法的前中后序遍历,已经在[二叉树:前中后序递归遍历](https://programmercarl.com/二叉树的递归遍历.html)详细讲解了。 对于二叉树的递归法的前中后序遍历,已经在[二叉树:前中后序递归遍历](https://programmercarl.com/二叉树的递归遍历.html)详细讲解了。
@ -102,9 +104,9 @@ public:
}; };
``` ```
## 迭代法 ### 迭代法
### 深度优先遍历 #### 深度优先遍历
[二叉树:听说递归能做的,栈也能做!](https://programmercarl.com/二叉树的迭代遍历.html)中给出了前中后序迭代方式的写法,所以本题可以很轻松的写出如下迭代法的代码: [二叉树:听说递归能做的,栈也能做!](https://programmercarl.com/二叉树的迭代遍历.html)中给出了前中后序迭代方式的写法,所以本题可以很轻松的写出如下迭代法的代码:
@ -163,7 +165,7 @@ public:
如果上面这个代码看不懂,回顾一下文章[二叉树:前中后序迭代方式的统一写法](https://programmercarl.com/二叉树的统一迭代法.html)。 如果上面这个代码看不懂,回顾一下文章[二叉树:前中后序迭代方式的统一写法](https://programmercarl.com/二叉树的统一迭代法.html)。
### 广度优先遍历 #### 广度优先遍历
也就是层序遍历,层数遍历也是可以翻转这棵树的,因为层序遍历也可以把每个节点的左右孩子都翻转一遍,代码如下: 也就是层序遍历,层数遍历也是可以翻转这棵树的,因为层序遍历也可以把每个节点的左右孩子都翻转一遍,代码如下:
@ -259,7 +261,7 @@ public:
## 其他语言版本 ## 其他语言版本
### Java ### Java:
```Java ```Java
//DFS递归 //DFS递归
class Solution { class Solution {
@ -310,7 +312,7 @@ class Solution {
} }
``` ```
### Python ### Python:
递归法:前序遍历: 递归法:前序遍历:
```python ```python
@ -466,7 +468,7 @@ class Solution:
``` ```
### Go ### Go:
递归版本的前序遍历 递归版本的前序遍历
```Go ```Go
@ -575,7 +577,7 @@ func invertTree(root *TreeNode) *TreeNode {
} }
``` ```
### JavaScript ### JavaScript:
使用递归版本的前序遍历 使用递归版本的前序遍历
```javascript ```javascript
@ -783,7 +785,7 @@ function invertTree(root: TreeNode | null): TreeNode | null {
}; };
``` ```
### C ### C:
递归法 递归法
```c ```c
@ -961,7 +963,7 @@ object Solution {
} }
``` ```
### rust ### Rust:
```rust ```rust
impl Solution { impl Solution {
@ -991,7 +993,7 @@ impl Solution {
} }
``` ```
### C# ### C#:
```csharp ```csharp
//递归 //递归
@ -1042,3 +1044,4 @@ public class Solution {
<a href="https://programmercarl.com/other/kstar.html" target="_blank"> <a href="https://programmercarl.com/other/kstar.html" target="_blank">
<img src="../pics/网站星球宣传海报.jpg" width="1000"/> <img src="../pics/网站星球宣传海报.jpg" width="1000"/>
</a> </a>