mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-11 13:00:22 +08:00
更新 0701.二叉搜索树中的插入操作 排版格式修复
This commit is contained in:
@ -23,11 +23,11 @@
|
||||
* -10^8 <= val <= 10^8
|
||||
* 新值和原始二叉搜索树中的任意节点值都不同
|
||||
|
||||
# 算法公开课
|
||||
## 算法公开课
|
||||
|
||||
**《代码随想录》算法视频公开课:[原来这么简单? | LeetCode:701.二叉搜索树中的插入操作](https://www.bilibili.com/video/BV1Et4y1c78Y?share_source=copy_web),相信结合视频在看本篇题解,更有助于大家对本题的理解**。
|
||||
**[《代码随想录》算法视频公开课](https://programmercarl.com/other/gongkaike.html):[原来这么简单? | LeetCode:701.二叉搜索树中的插入操作](https://www.bilibili.com/video/BV1Et4y1c78Y?share_source=copy_web),相信结合视频在看本篇题解,更有助于大家对本题的理解**。
|
||||
|
||||
# 思路
|
||||
## 思路
|
||||
|
||||
这道题目其实是一道简单题目,**但是题目中的提示:有多种有效的插入方式,还可以重构二叉搜索树,一下子吓退了不少人**,瞬间感觉题目复杂了很多。
|
||||
|
||||
@ -43,7 +43,7 @@
|
||||
|
||||
接下来就是遍历二叉搜索树的过程了。
|
||||
|
||||
## 递归
|
||||
### 递归
|
||||
|
||||
递归三部曲:
|
||||
|
||||
@ -165,7 +165,7 @@ public:
|
||||
**网上千篇一律的代码,可能会误导大家认为通过递归函数返回节点 这样的写法是天经地义,其实这里是有优化的!**
|
||||
|
||||
|
||||
## 迭代
|
||||
### 迭代
|
||||
|
||||
再来看看迭代法,对二叉搜索树迭代写法不熟悉,可以看这篇:[二叉树:二叉搜索树登场!](https://programmercarl.com/0700.二叉搜索树中的搜索.html)
|
||||
|
||||
@ -198,7 +198,7 @@ public:
|
||||
};
|
||||
```
|
||||
|
||||
# 总结
|
||||
## 总结
|
||||
|
||||
首先在二叉搜索树中的插入操作,大家不用恐惧其重构搜索树,其实根本不用重构。
|
||||
|
||||
@ -207,9 +207,9 @@ public:
|
||||
最后依然给出了迭代的方法,迭代的方法就需要记录当前遍历节点的父节点了,这个和没有返回值的递归函数实现的代码逻辑是一样的。
|
||||
|
||||
|
||||
# 其他语言版本
|
||||
## 其他语言版本
|
||||
|
||||
## Java
|
||||
### Java
|
||||
|
||||
```java
|
||||
class Solution {
|
||||
@ -254,7 +254,7 @@ class Solution {
|
||||
}
|
||||
```
|
||||
-----
|
||||
## Python
|
||||
### Python
|
||||
|
||||
递归法(版本一)
|
||||
```python
|
||||
@ -371,7 +371,7 @@ class Solution:
|
||||
|
||||
```
|
||||
-----
|
||||
## Go
|
||||
### Go
|
||||
|
||||
递归法
|
||||
|
||||
@ -417,7 +417,7 @@ func insertIntoBST(root *TreeNode, val int) *TreeNode {
|
||||
}
|
||||
```
|
||||
-----
|
||||
## JavaScript
|
||||
### JavaScript
|
||||
|
||||
有返回值的递归写法
|
||||
|
||||
@ -530,7 +530,7 @@ var insertIntoBST = function (root, val) {
|
||||
};
|
||||
```
|
||||
|
||||
## TypeScript
|
||||
### TypeScript
|
||||
|
||||
> 递归-有返回值
|
||||
|
||||
@ -595,7 +595,7 @@ function insertIntoBST(root: TreeNode | null, val: number): TreeNode | null {
|
||||
```
|
||||
|
||||
|
||||
## Scala
|
||||
### Scala
|
||||
|
||||
递归:
|
||||
|
||||
@ -632,7 +632,7 @@ object Solution {
|
||||
}
|
||||
```
|
||||
|
||||
### rust
|
||||
### Rust
|
||||
|
||||
迭代:
|
||||
|
||||
@ -697,3 +697,4 @@ impl Solution {
|
||||
<a href="https://programmercarl.com/other/kstar.html" target="_blank">
|
||||
<img src="../pics/网站星球宣传海报.jpg" width="1000"/>
|
||||
</a>
|
||||
|
||||
|
Reference in New Issue
Block a user