🎄树结构 — 递归
数组 和 链表, 就是所有数据结构的基础
[1, 2, 3, 4]
1 -> 2 -> 3 -> 4
function() {this.val = valthis.next = xxx}
二叉树是最简单的树结构
1
/ \
2 3
function TreeNode(val) { // 链表结构的扩展this.val = valthis.left = nullthis.right = null}
104
// 先写子问题,再写终止条件if(root === null) {return}// 终止条件// 树最大深度 = 左子树的深度 和 右子树的深度,最大的那一个+1return Math.max(maxDepth(root.left), mexDepth(root.right))+1 (无限递归报错)
226 翻转二叉树
if(root == null) {return root}// 1 递归子问题// 左右翻转 -- 解构赋值[root.left, root.right] = [invertTree(root.right), invertTree(root.left)]return root // 最后要记得 return root
