服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - PHP教程 - PHP实现从上往下打印二叉树的方法

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

2019-10-25 12:43重口味AC PHP教程

这篇文章主要介绍了PHP实现从上往下打印二叉树的方法,涉及php二叉树遍历相关操作技巧,需要的朋友可以参考下

本文实例讲述了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程序设计有所帮助。

延伸 · 阅读

精彩推荐