попробуй сделать рекурсию php - PullRequest
0 голосов
/ 30 января 2020

я пытаюсь создать сбалансированное дерево с php, но я всегда получаю ошибку, как

BinarySearchTree Object ( 
    [_root:BinarySearchTree:private] => BinarySearchNode Object ( 
        [val] => 8 
        [left] => 
        [right] => BinarySearchTree Object *RECURSION* ) )

мой код

public function buildTreeUtil($nodes,$start,$end)
{
    if ($start > $end)
        return NULL;

    $mid = ($start + $end)/2;

    $this->_root = new BinarySearchNode($nodes[$mid]);
    $this->_root->left  = $this->buildTreeUtil($nodes, $start, $mid-1);
    $this->_root->right = $this->buildTreeUtil($nodes, $mid+1, $end);

    return $this;
}

я называю свою функцию как $this->buildTreeUtil([5,6,7,8,10],0,4), пожалуйста, помогите я: (

...