更新 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拒绝了。真假不做判断权当一个乐子哈
# 题外话
## 算法公开课
**[《代码随想录》算法视频公开课](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)详细讲解了。
@ -102,9 +104,9 @@ public:
};
```
## 迭代法
### 迭代法
### 深度优先遍历
#### 深度优先遍历
[二叉树:听说递归能做的,栈也能做!](https://programmercarl.com/二叉树的迭代遍历.html)中给出了前中后序迭代方式的写法,所以本题可以很轻松的写出如下迭代法的代码:
@ -163,7 +165,7 @@ public:
如果上面这个代码看不懂,回顾一下文章[二叉树:前中后序迭代方式的统一写法](https://programmercarl.com/二叉树的统一迭代法.html)。
### 广度优先遍历
#### 广度优先遍历
也就是层序遍历,层数遍历也是可以翻转这棵树的,因为层序遍历也可以把每个节点的左右孩子都翻转一遍,代码如下:
@ -259,7 +261,7 @@ public:
## 其他语言版本
### Java
### Java:
```Java
//DFS递归
class Solution {
@ -310,7 +312,7 @@ class Solution {
}
```
### Python
### Python:
递归法:前序遍历:
```python
@ -466,7 +468,7 @@ class Solution:
```
### Go
### Go:
递归版本的前序遍历
```Go
@ -575,7 +577,7 @@ func invertTree(root *TreeNode) *TreeNode {
}
```
### JavaScript
### JavaScript:
使用递归版本的前序遍历
```javascript
@ -783,7 +785,7 @@ function invertTree(root: TreeNode | null): TreeNode | null {
};
```
### C
### C:
递归法
```c
@ -961,7 +963,7 @@ object Solution {
}
```
### rust
### Rust:
```rust
impl Solution {
@ -991,7 +993,7 @@ impl Solution {
}
```
### C#
### C#:
```csharp
//递归
@ -1042,3 +1044,4 @@ public class Solution {
<a href="https://programmercarl.com/other/kstar.html" target="_blank">
<img src="../pics/网站星球宣传海报.jpg" width="1000"/>
</a>