この記事では、PHP でバイナリ ツリー イメージを取得する方法を主に紹介し、バイナリ ツリーを反転するためのキューを使用した PHP の関連操作スキルも紹介します。この記事ではPHPでバイナリツリーイメージを取得する方法について説明します。参考までに皆さんと共有してください。詳細は次のとおりです。
質問 与えられた二分木を操作してミラーに変換します。ソースバイナリツリーのイメージ。
解決策のアイデアバイナリ ツリーを反転するには、再帰的と非再帰的の 2 つの方法があります。非再帰的方法はキューを使用することです。 。
実装コード
<?php /*class TreeNode{ var $val; var $left = NULL; var $right = NULL; function __construct($val){ $this->val = $val; } }*/ function Mirror(&$root) { if($root == NULL) return 0; $queue = array(); array_push($queue, $root); while(!empty($queue)){ $node = array_shift($queue); $tmp = $node->left; $node->left = $node->right; $node->right = $tmp; if($node->left != NULL) array_push($queue, $node->left); if($node->right != NULL) array_push($queue, $node->right); } }
興味があるかもしれません記事:
PHP がリンク リストの最後から K 番目のノードを取得する方法についての説明PHP がバイナリを出力する方法についての説明ツリーを上から下にheader_php を使用してカスタム データを送信する php メソッドのヒント##
以上がPHPで二分木イメージを取得する方法の説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。