服务器之家

服务器之家 > 正文

PHP实现从上往下打印二叉树的方法

时间:2019-10-25 12:43     来源/作者:重口味AC

本文实例讲述了PHP实现从上往下打印二叉树的方法。分享给大家供大家参考,具体如下:

问题

从上往下打印出二叉树的每个节点,同层节点从左至右打印。

解决思路

每层树从左到右打印,所以需要将节点的左右子树存起来,因为先进先出,所以用队列。

实现代码

  1. /*class TreeNode{ 
  2.   var $val; 
  3.   var $left = NULL; 
  4.   var $right = NULL; 
  5.   function __construct($val){ 
  6.     $this->val = $val; 
  7.   } 
  8. }*/ 
  9. function PrintFromTopToBottom($root) 
  10.   $queueVal = array(); 
  11.   $queueNode = array(); 
  12.   if($root == NULL) 
  13.     return $queueVal; 
  14.   array_push($queueNode, $root); 
  15.   while(!empty($queueNode)){ 
  16.     $node = array_shift($queueNode); 
  17.     if($node->left != NULL) 
  18.       array_push($queueNode,$node->left); 
  19.     if($node->right != NULL) 
  20.       array_push($queueNode,$node->right); 
  21.     array_push($queueVal,$node->val); 
  22.   } 
  23.   return $queueVal; 

希望本文所述对大家PHP程序设计有所帮助。

标签:

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字 2019-06-05
返回顶部