235. 二叉搜索树的最近公共祖先

题目:235. 二叉搜索树的最近公共祖先

思路

不要浪费二叉搜索树的好性质;
不需要遍历整棵树;

代码

class Solution {
public:
    TreeNode* travel(TreeNode* cur, TreeNode* p, TreeNode* q)
    {   
        if(cur == NULL || cur == p || cur == q)
        {
            return cur;
        }
        // 
        if(cur->val > p->val && cur->val > q->val)
        {
            TreeNode* left = travel(cur->left, p, q);
            if(left)
            {
                return left;
            }
        }
        else if(cur->val < p->val && cur->val < q->val)
        {
            TreeNode* right = travel(cur->right, p, q);
            if(right)
            {
                return right;
            }
        }
        return cur;
    }

    TreeNode* lowestCommonAncestor(TreeNode* root, TreeNode* p, TreeNode* q) {
        return travel(root, p, q);
    }
};

相关推荐

  1. 235. 搜索最近公共祖先

    2024-06-16 20:20:02       33 阅读
  2. 搜索最近公共祖先【数据结构】

    2024-06-16 20:20:02       48 阅读
  3. 搜索最近公共祖先

    2024-06-16 20:20:02       26 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-16 20:20:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-16 20:20:02       101 阅读
  3. 在Django里面运行非项目文件

    2024-06-16 20:20:02       82 阅读
  4. Python语言-面向对象

    2024-06-16 20:20:02       91 阅读

热门阅读

  1. SQL分类

    2024-06-16 20:20:02       30 阅读
  2. 企业上云如何选

    2024-06-16 20:20:02       31 阅读
  3. QVector使用详解

    2024-06-16 20:20:02       25 阅读
  4. k8s概述

    k8s概述

    2024-06-16 20:20:02      22 阅读
  5. 去除upload的抖动效果

    2024-06-16 20:20:02       26 阅读
  6. 白酒起源传说(二)——上天造酒说

    2024-06-16 20:20:02       35 阅读
  7. 数 组

    数 组

    2024-06-16 20:20:02      27 阅读
  8. Spock mock私有方法

    2024-06-16 20:20:02       30 阅读
  9. Time.deltaTime

    2024-06-16 20:20:02       28 阅读