1、涉及的题目考虑使用:递归,遍历(深度、广度)处理
2、递归:
(1)结束条件
一般为node为空,或者Node为叶子节点;
考虑函数的返回值
(2)递归结构(注意二叉搜索树的左右节点的特殊性)
考虑node.left,node.right的函数调用与node的函数实现的关系
考虑node.left空,node.right的函数调用与node的函数实现的关系
考虑node.left,node.right空的函数调用与node的函数实现的关系
看是否可以统一起来
特殊:
对于参数是两个树的,处理的时候考虑树1的根节点、树2的根节点。(对应)当不是对应情况时,按572题的思路考虑
(3)特殊的直接使用给出的函数参数无法实现功能,考虑再写个函数,在主函数中调用
3、遍历
(1)N叉树的遍历只是将二叉树对left/right处理改为for循环
(2)广度遍历使用于分层的问题。
(3)修改左右子树的处理顺序。
二叉搜索树
1、中序遍历是递增序列,将编列后的节点加入数组,转为对数组的操作。也可中序遍历加入perNode节点,处理
2、左右子树的特点(大小)
trip
特殊的一类多叉树,记住相关经典操作