ホームページ > バックエンド開発 > PHPチュートリアル > PHP でバイナリ ツリーが対称かどうかを判断する方法

PHP でバイナリ ツリーが対称かどうかを判断する方法

小云云
リリース: 2023-03-19 14:14:02
オリジナル
1466 人が閲覧しました

この記事では、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);
}
ログイン後にコピー

関連推奨事項:

JavaScriptは二分木の事前順序、順序内、事後探索メソッドを実装します

の定義方法の詳細な説明PHP の完全なバイナリ ツリー

JS はデータ構造を実装します: ツリーとバイナリ ツリー、バイナリ ツリーのトラバーサルと基本的な操作メソッド

以上がPHP でバイナリ ツリーが対称かどうかを判断する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート