更新 0669.修剪二叉搜索树 排版格式修复

This commit is contained in:
jinbudaily
2023-07-23 18:58:10 +08:00
parent 0f22ada3df
commit e14e2169c4

View File

@ -20,17 +20,17 @@
![669.修剪二叉搜索树1](https://code-thinking-1253855093.file.myqcloud.com/pics/20201014173219142.png)
# 算法公开课
## 算法公开课
**《代码随想录》算法视频公开课:[你修剪的方式不对,我来给你纠正一下!| LeetCode669. 修剪二叉搜索树](https://www.bilibili.com/video/BV17P41177ud?share_source=copy_web),相信结合视频在看本篇题解,更有助于大家对本题的理解**。
**[《代码随想录》算法视频公开课](https://programmercarl.com/other/gongkaike.html)[你修剪的方式不对,我来给你纠正一下!| LeetCode669. 修剪二叉搜索树](https://www.bilibili.com/video/BV17P41177ud?share_source=copy_web),相信结合视频在看本篇题解,更有助于大家对本题的理解**。
# 思路
## 思路
相信看到这道题目大家都感觉是一道简单题事实上leetcode上也标明是简单
但还真的不简单!
## 递归法
### 递归法
直接想法就是:递归处理,然后遇到 `root->val < low || root->val > high` 的时候直接return NULL一波修改赶紧利落。
@ -188,7 +188,7 @@ public:
只看代码,其实不太好理解节点是如何移除的,这一块大家可以自己再模拟模拟!
## 迭代法
### 迭代法
因为二叉搜索树的有序性,不需要使用栈模拟递归的过程。
@ -233,7 +233,7 @@ public:
};
```
# 总结
## 总结
修剪二叉搜索树其实并不难,但在递归法中大家可看出我费了很大的功夫来讲解如何删除节点的,这个思路其实是比较绕的。
@ -243,10 +243,10 @@ public:
本题我依然给出递归法和迭代法,初学者掌握递归就可以了,如果想进一步学习,就把迭代法也写一写。
# 其他语言版本
## 其他语言版本
## Java
### Java
**递归**
@ -311,7 +311,7 @@ class Solution {
````
## Python
### Python
递归法版本一
```python
@ -381,7 +381,7 @@ class Solution:
```
## Go
### Go
```go
// 递归
@ -436,7 +436,7 @@ func trimBST(root *TreeNode, low int, high int) *TreeNode {
```
## JavaScript版本
### JavaScript
迭代:
@ -492,7 +492,7 @@ var trimBST = function (root,low,high) {
}
```
## TypeScript
### TypeScript
> 递归法
@ -540,7 +540,7 @@ function trimBST(root: TreeNode | null, low: number, high: number): TreeNode | n
};
```
## Scala
### Scala
递归法:
@ -557,7 +557,7 @@ object Solution {
}
```
## rust
### Rust
// 递归
@ -590,3 +590,4 @@ impl Solution {
<a href="https://programmercarl.com/other/kstar.html" target="_blank">
<img src="../pics/网站星球宣传海报.jpg" width="1000"/>
</a>