この記事では主に、バイナリツリー内のノードを判断するphp再帰関連の操作スキルを含む、バイナリツリーが対称かどうかを判断するPHPの方法を紹介します。PHPに感謝している友人は、この記事を参照してください
。この記事では、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); }
以上がこの記事の内容です。皆様の勉強のお役に立てれば幸いです! !
関連する推奨事項:
以上がバイナリ ツリーが対称かどうかを判断する PHP メソッドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。