39、PHP 实现二叉树的下一个结点(含源码)

题目: PHP 实现二叉树的下一个结点

描述:
给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。
注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。

<?php
/*class TreeLinkNode{
    var $val;
    var $left = NULL;
    var $right = NULL;
    var $next = NULL;
    function __construct($x){
        $this->val = $x;
    }
}*/
function GetNext($pNode)
{
    if($pNode==null)
        return null;
    if($pNode->right)
        {
        $pNode=$pNode->right;
        while($pNode->left)
            {
            $pNode=$pNode->left;
        }
        return $pNode;
    }
    else
        while($pNode->next)
            {
            if($pNode->next->left==$pNode)
                return $pNode->next;
            $pNode = $pNode->next;
        }
    return null;
}

最近更新

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

    2024-07-19 17:58:01       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-19 17:58:01       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-19 17:58:01       58 阅读
  4. Python语言-面向对象

    2024-07-19 17:58:01       69 阅读

热门阅读

  1. box-shadow

    2024-07-19 17:58:01       16 阅读
  2. 【理解Python中的字典推导式】

    2024-07-19 17:58:01       18 阅读
  3. Qt 遍历Combbox下拉框的内容并进行判断

    2024-07-19 17:58:01       17 阅读
  4. 数据库存 IP 地址,用什么数据类型比较好?

    2024-07-19 17:58:01       16 阅读
  5. linux报错-bash: ./xx.sh: Permission denied

    2024-07-19 17:58:01       15 阅读
  6. 网络安全等级保护制度是如何分级的?

    2024-07-19 17:58:01       19 阅读
  7. 【Leetcode】14. 最长公共前缀

    2024-07-19 17:58:01       17 阅读
  8. 从零开始!Jupyter Notebook 安装教程

    2024-07-19 17:58:01       21 阅读
  9. iptables

    iptables

    2024-07-19 17:58:01      19 阅读