Heim >Backend-Entwicklung >PHP-Tutorial >Detaillierte Erläuterung der Schritte zum Erhalten eines Binärbaumbilds mit PHP

Detaillierte Erläuterung der Schritte zum Erhalten eines Binärbaumbilds mit PHP

php中世界最好的语言
php中世界最好的语言Original
2018-05-19 14:49:391138Durchsuche

Dieses Mal erkläre ich Ihnen ausführlich, wie Sie mit PHP ein Binärbaumbild erhalten. Was sind die Vorsichtsmaßnahmen , um mit PHP ein Binärbaumbild zu erhalten? Schauen Sie mal rein.

Problem

Betreiben Sie den angegebenen Binärbaum und wandeln Sie ihn in ein Spiegelbild des Quellbinärbaums um.

Lösung

Es gibt zwei Möglichkeiten, den Binärbaum umzudrehen: rekursiv und nicht-rekursiv ist die Verwendung von Queue.

Implementierungscode

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

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen erhalten Sie zu anderen verwandten Artikeln auf der chinesischen PHP-Website!

Empfohlene Lektüre:

Lumen-Zeitzone So stellen Sie die Zeitzone ein

PHP-Implementierung der Zusammenführung zweier sortierter verknüpfter Listen mit Codefreigabe

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Schritte zum Erhalten eines Binärbaumbilds mit PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn