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

时间:2022-09-24 16:29:41

本文实例讲述了PHP实现判断二叉树是否对称的方法。分享给大家供大家参考,具体如下:

问题

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

题解

递归判断二叉树两侧。

实现代码:

  1. <?php 
  2. /*class TreeNode{ 
  3.  var $val; 
  4.  var $left = NULL; 
  5.  var $right = NULL; 
  6.  function __construct($val){ 
  7.   $this->val = $val; 
  8.  } 
  9. }*/ 
  10. function isSymmetrical($pRoot) 
  11.  if($pRoot==nullreturn true
  12.  return compare($pRoot->left,$pRoot->right); 
  13. function compare($root1,$root2){ 
  14.  if($root1==null&&$root2==nullreturn true
  15.  if($root1==null||$root2==nullreturn false
  16.  if($root1->val!=$root2->val) return false
  17.  return compare($root1->left,$root2->right)&&compare($root1->right,$root2->left); 

希望本文所述对大家PHP程序设计有所帮助。