【LeetCode】刷题家之700. Search in a Binary Search Tree

请看题

Example

思路

非常简单的一道题,如果当前节点值小于val就往右走,反过来也是一样。然后再加一个if判断当前节点值为不为空或者当前节点值==val就返回节点。最后提交即可。

Code

/**
/**
 * Definition for a binary tree node.
 * struct TreeNode {
 *     int val;
 *     TreeNode *left;
 *     TreeNode *right;
 *     TreeNode() : val(0), left(nullptr), right(nullptr) {}
 *     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
 *     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
 * };
 */
class Solution {
public:
    TreeNode* searchBST(TreeNode* root, int val) {
        if(!root || root->val == val)
        {
            return root;
        }
        if(root->val > val)
        {
            return searchBST(root->left, val);
        }
        else
        {
            return searchBST(root->right, val);
        }
    }
};

结束。

1 个赞

刷题加油

6 个赞

From #dev to 开发调优

1 个赞