Golang主题学习月】 刷题比玩游戏好多了,成就感越来越强,每天坚持刷一道题,每天练习30分钟,等8块腹肌,等大厂offer.

color{red}{~}

那就干吧! 最近刷的标题都是关于appstore二叉树的。

leecode 94. 二叉树的中序遍历

给定一个二叉树的根节点 root ,回来它的 中序遍历。

二叉树之中序遍历|Go主题月

输入:root = [1,null,2,3]
输出:[1,3,APP2]

示例 2:

输入:root = []
输出:[]

示例 3:

输入:root = [1]
输出:[1]

示例 4:

输入:root = [1approve,2]
输出:[2,1]

示例 5:

输入:root数组指针 = [1,null,2]
输出:[1,2]

提示:

树中节点数目在规模 [0, 100] 内
-100 <= NoAPPde.val <= 100


首要我们需求了解什么appstore是二叉树的中序遍历:依照拜访左子树——宫颈癌根节点——右数组子树的方法遍历这棵树,而在拜访左子树或许右子树的时分我们依照相同的方法遍历,直到遍历完整棵树。因此整个遍历进程天然具有工商银行递归的性数组公式质,我们可以直接用递归函数来仿照这一进程。

参看代码

定义一颗树

/**
* Definition fogoogler a binary tree node.
* type TreeNo数组公式de struct {
*     Val int          // 根
*     Left *TreeNode   //左节点
*     Right数组词 *TreeNode  //右节点
* }
*/

GO语言版 递归

func inorderTraversal(root *TreeNode)龚俊艺人 (r公积金借款es []int) {
var inorder func(node *龚俊艺人TreeNode)
inorder = func(node *TreeNode) {
if node == nil {
return // 完毕当前递归
}
inorder(node.Left) // 直接怼到左边最下边
res = append(res, node.Val) // 添加到数组
inorder(node.RightAPP) // 看appstore右边还有没有分支,有就继续走,没有就将右节点参与数组
}
inorder(root)
return
}

G枸杞O语言版 迭代 栈:先进后出

定义一个栈,栈存的便是一棵树

1.先将整颗树怼进去,在把一切的左子树怼进去

2.遍历左子树,直接左边的最下边

3.由于先进后出,拿到了最下面的左节点

4.数组的定义怼到数组里

5.看以右节点为根的还有没有左节点,有就回到上面第1步,没有就走第3步,把根节点怼进去,在怼右节点。

func inorderTraversal(root *TreeNode) (res宫颈癌 [数组词]int) {
stack := []*TreeNode{}    // 定义一个栈,栈存的便是一棵树
for root != nil || le数组的定义n公积金提取(stack) > 0 {
for root != nil {
stack = append(工商银行stack, r数组去重的5种方法oo龚俊艺人t)  // 1.先将整颗树怼进去,在把一切的左application子树怼进去
root = root.Left   //公积金 2.遍历左子树,直接左边的最下边
}app安装下载
ro数组词ot = st数组的定义a数组的定义ck[leappstoren(stack)-1]  // 3.由于先进后出公积金借款,拿到了最下数组词面的左app安装下载节点
stack = stack[:leapproven(stack)-1]
res = append(res, root.Val) // 4.怼到数组里
//5.看以右节点为根的还有没有左节点数组初始化,有就回到上面第1步,没appreciate有就走第3步,把根节点
root = root.Right // 
}
return
}

诚心感谢帅逼靓女们能看到这儿,假定这个文章写得还不错,觉得有点东西的话

求点赞 求重视❤️ 求apple同享 对8块腹肌的我来说真宫颈癌的 十分有用!!!

假定本篇博客有任何过错,请批判指导,不胜感激 !❤️❤️❤️❤️