欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP判断二叉树是否对称的方法

程序员文章站 2022-07-01 23:26:52
本文实例讲述了PHP实现判断二叉树是否对称的方法。分享给大家供大家参考,具体如下: 问题 请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是...
本文实例讲述了PHP实现判断二叉树是否对称的方法。分享给大家供大家参考,具体如下:

问题

请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。

题解

递归判断二叉树两侧。

实现代码:

/*class TreeNode{

var $val;

var $left = NULL;

var $right = NULL;

function __construct($val){

$this->val = $val;

}

}*/

function isSymmetrical($pRoot)

{

if($pRoot==null) return true;

return compare($pRoot->left,$pRoot->right);

}

function compare($root1,$root2){

if($root1==null&&$root2==null) return true;

if($root1==null||$root2==null) return false;

if($root1->val!=$root2->val) return false;

return compare($root1->left,$root2->right)&&compare($root1->right,$root2->left);

}