235. 二叉搜索树的最近公共祖先
利用二叉树有序特点,中节点的数组 一定是在 [p, q]区间的
递归三部曲:
确定递归函数返回值以及参数
参数就是当前节点,以及两个结点 p、q。
返回值是要返回最近公共祖先,所以是TreeNode *
确定终止条件
遇到空返回
确定单层递归的逻辑
如果 cur->val 大于 p->val,同时 cur->val 大于q->val,那么就应该向左遍历
701.二叉搜索树中的插入操作
递归三部曲:
确定递归函数参数以及返回值
参数就是根节点指针,以及要插入元素,返回值给root操作
确定终止条件
终止条件就是找到遍历的节点为null的时候,就是要插入节点的位置了,并把插入的节点返回。
确定单层递归的逻辑
根据插入元素的数值,决定左递归还是右递归
if(root->val>val)root->left=insertIntoBST(root->left,val);if(root->val<val)root->right=insertIntoBST(root->right,val);returnroot;
450.删除二叉搜索树中的节点
树删除有点难,暂时挂起