Leetcode PHP题解--D33 700. Search in a Binary Search Tree

700. Search in a Binary Search Tree

题目链接

700. Search in a Binary Search Tree

题目分析

从给定的二叉树中,查找指定值及其子节点。

思路

这个好像不用多说什么了吧…按先序遍历搜索,找到则返回。

没有则返回NULL。

最终代码

<?php
/**
 * Definition for a binary tree node.
 * class TreeNode {
 *     public $val = null;
 *     public $left = null;
 *     public $right = null;
 *     function __construct($value) { $this->val = $value; }
 * }
 */
class Solution {
    function searchBST($root, $val) {
        if($root->val == $val){
            return $root;
        }
        $a = NULL;
        $b = NULL;
        if($root->left){
            $a = $this->searchBST($root->left, $val);
            if($a){
                return $a;
            }
        }
        if($root->right){
            $b = $this->searchBST($root->right, $val);
            if($b){
                return $b;
            }
        }
        return NULL;
    }
}

若觉得本文章对你有用,欢迎用爱发电资助。

skys215 has written 39 articles

没有bug的代码是有bug的代码。

积分:2152 等级:P7 职业:PHP工程师 城市:深圳

0 条回复

登录后才能进行评论,立即登录?