二叉树总结
二叉树的结构
stauct TreeNode {
int val;
TreeNode* left;
TreeNode* right;
}
二叉树的递归函数分析
二叉树的递归函数当做只有一个根节点,一个左子树,一个右节点的数去看,这看着是个废话, 其实很重要
要明白的定义:
- 二叉树的节点定义
- 每一层的含义
- 每向下一层含义
- 根节点到叶子节点的路径的含义
(未完待续)
回溯
什么是回溯
二叉树先序遍历怎么能从左节点到达有节点就是需要回溯
动态规划
个人意见是应该加一步状态分析
状态分析:
- 列出所有的状态,将状态归纳后就可以,定义dp数组
- 状态转移,归纳状态也就是递推公式是什么
动态规划5步曲
确定dp数组(dp table)以及下标的含义
确定递推公式
dp数组如何初始化
确定遍历顺序
举例推导dp数组