Maison >développement back-end >tutoriel php >Comment déterminer si un arbre binaire est symétrique en PHP

Comment déterminer si un arbre binaire est symétrique en PHP

小云云
小云云original
2018-01-13 11:25:151509parcourir

Cet article présente principalement la méthode permettant de juger si un arbre binaire est symétrique en PHP et implique les compétences opérationnelles associées pour juger des nœuds dans les arbres binaires récursifs PHP. Les amis qui en ont besoin pourront s'y référer. .

Question

Veuillez implémenter une fonction pour déterminer si un arbre binaire est symétrique. Notez qu'un arbre binaire est défini comme symétrique s'il est identique à l'image de l'arbre binaire.

Solution

Jugez récursivement les deux côtés de l'arbre binaire.

Code d'implémentation :


<?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);
}

Recommandations associées :

JavaScript implémente des méthodes de parcours de pré-ordre, dans l'ordre et après-ordre des arbres binaires

Explication détaillée de la méthode de définition de l'arbre binaire complet en php

Structure des données d'implémentation JS : arbre et arbre binaire, traversée d'arbre binaire et méthodes de fonctionnement de base

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn