Une explication sur la façon d'imprimer un arbre binaire de haut en bas en PHP

jacklove
Libérer: 2023-04-02 07:36:01
original
1382 Les gens l'ont consulté

Cet article présente principalement la méthode d'impression des arbres binaires de haut en bas en PHP, impliquant les compétences opérationnelles liées à la traversée des arbres binaires PHP. Les amis dans le besoin peuvent s'y référer

L'exemple de cet article raconte. l'implémentation de PHP de haut en bas. Méthode pour imprimer l'arbre binaire. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Problème

Imprimez chaque nœud de l'arbre binaire de haut en bas , nœuds au même niveau Imprimez de gauche à droite.

Solution

Chaque couche de l'arbre est imprimée de gauche à droite, les sous-arbres gauche et droit du nœud doivent donc être stockés , car premier entré, premier sorti, utilisez donc la file d'attente.

Code de mise en œuvre

/*class TreeNode{
  var $val;
  var $left = NULL;
  var $right = NULL;
  function __construct($val){
    $this->val = $val;
  }
}*/
function PrintFromTopToBottom($root)
{
  $queueVal = array();
  $queueNode = array();
  if($root == NULL)
    return $queueVal;
  array_push($queueNode, $root);
  while(!empty($queueNode)){
    $node = array_shift($queueNode);
    if($node->left != NULL)
      array_push($queueNode,$node->left);
    if($node->right != NULL)
      array_push($queueNode,$node->right);
    array_push($queueVal,$node->val);
  }
  return $queueVal;
}
Copier après la connexion

Vous pourriez ressentir Articles d'intérêt :

méthode php d'envoi de données personnalisées via les astuces header_php

php utilise ob_start() pour effacer la sortie et la sortie sélective Explication de la méthode

Explication de la méthode de fusion de deux listes chaînées triées en PHP

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!