update 0700.二叉搜索树中的搜索: 修改 go 的迭代法

This commit is contained in:
Yuhao Ju
2022-12-04 12:24:34 +08:00
committed by GitHub
parent b81abd3d6b
commit a85036e811

View File

@ -24,7 +24,7 @@
## 思路 ## 思路
之前我们讲都是普通二叉树,那么接下来看看二叉搜索树。 之前我们讲都是普通二叉树,那么接下来看看二叉搜索树。
在[关于二叉树,你该了解这些!](https://programmercarl.com/二叉树理论基础.html)中,我们已经讲过了二叉搜索树。 在[关于二叉树,你该了解这些!](https://programmercarl.com/二叉树理论基础.html)中,我们已经讲过了二叉搜索树。
@ -269,13 +269,13 @@ class Solution:
```go ```go
//递归法 //递归法
func searchBST(root *TreeNode, val int) *TreeNode { func searchBST(root *TreeNode, val int) *TreeNode {
if root==nil||root.Val==val{ if root == nil || root.Val == val {
return root return root
} }
if root.Val>val{ if root.Val > val {
return searchBST(root.Left,val) return searchBST(root.Left, val)
} }
return searchBST(root.Right,val) return searchBST(root.Right, val)
} }
``` ```
@ -284,13 +284,13 @@ func searchBST(root *TreeNode, val int) *TreeNode {
```go ```go
//迭代法 //迭代法
func searchBST(root *TreeNode, val int) *TreeNode { func searchBST(root *TreeNode, val int) *TreeNode {
for root!=nil{ for root != nil {
if root.Val>val{ if root.Val > val {
root=root.Left root = root.Left
}else if root.Val<val{ } else if root.Val < val {
root=root.Right root = root.Right
}else{ } else {
break return root
} }
} }
return nil return nil