Using recursive function inside to make a Depth fisrt search, visiting the outer variable, solving the "979. Distribute Coins in Binary Tree".
Using recursive function inside to make a Depth fisrt search, visiting the outer variable, solving the "979. Distribute Coins in Binary Tree".
递归、迭代、前序遍历,3 解法,求解《669. 修剪二叉搜索树》
递归、迭代、前序遍历,3 解法,求解《669. 修剪二叉搜索树》
后序遍历,递归和迭代 2 种算法,用哈希映射数据结构,字符串或元组构造键名,用序列化技巧,求解《652. 寻找重复的子树》
后序遍历,递归和迭代 2 种算法,用哈希映射数据结构,字符串 / 元组构造键名,用序列化技巧,求解《652. 寻找重复的子树》
深度优先搜索,后序遍历,递归 + 迭代和哈希表,2 解法求解《687. 最长同值路径》
深度优先搜索,后序遍历,递归 + 迭代和哈希表,2 解法求解《687. 最长同值路径》
递归,迭代右子节点(新建递归函数 / 使用原函数),3 解法,求解《998. 最大二叉树 II》
递归,迭代右子节点(新建递归函数 / 使用原函数),3 解法,求解《998. 最大二叉树 II》
广度优先搜索,深度优先搜索(前序遍历、中序遍历、后序遍历),递归、迭代(单栈、双栈和莫里斯),用减去每行起始序号技巧缩小数据范围,求解《662. 二叉树最大宽度》
广度优先搜索(队列 / 列表 + 层序遍历),深度优先搜索(前序遍历、中序遍历(包含莫里斯)、后序遍历),递归、迭代(单栈),用减去每行起始序号技巧缩小数据范围,求解《662. 二叉树最大宽度》
广度优先搜索,深度优先搜索(前序 / 中序(含莫里斯) / 后序 遍历,递归和迭代(单栈 / 双栈)),数字转为字符串,求解《655. 输出二叉树》
广度优先搜索,深度优先搜索(前序 / 中序(含莫里斯) / 后序 遍历,递归和迭代(单栈 / 双栈)),''+ int / strconv.Itoa / Integer.toString / int.ToString / sprintf(char*, "%d", int) / to_string / str 将数字转为字符串,求解《655. 输出二叉树》
递归和单调递减栈 2 算法,用 数组 / Slice / ArrayDeque / Stack / int* / stack / vector / List 实现,求解《654. 最大二叉树》
递归和单调递减栈 2 算法,用 数组 / Slice / ArrayDeque / Stack / int* / stack / vector / List 实现,求解《654. 最大二叉树》
广度优先搜索(层序遍历),深度优先搜索(前序、中序、后序,包含莫里斯遍历)递归和迭代(单栈、双栈),求解《1302. 层数最深叶子节点的和》
广度优先搜索(层序遍历),深度优先搜索(前序、中序、后序,包含莫里斯遍历)递归和迭代(单栈、双栈),求解《1302. 层数最深叶子节点的和》
深度优先搜索、广度优先搜索 2 种算法,求解《623. 在二叉树中增加一行》
深度优先搜索、广度优先搜索 2 种算法,求解《623. 在二叉树中增加一行》
1235下页