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

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服务器之家 - 编程语言 - 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程序设计有所帮助。

延伸 · 阅读

精彩推荐
  • PHP教程PHP命名空间namespace及use的简单用法分析

    PHP命名空间namespace及use的简单用法分析

    这篇文章主要介绍了PHP命名空间namespace及use的简单用法,结合实例形式分析了php命名空间的功能、使用方法及相关操作注意事项,需要的朋友可以参考下 ...

    Frank看庐山1712019-09-16
  • PHP教程PHP Cookie学习笔记

    PHP Cookie学习笔记

    这篇文章主要为大家分享了PHP Cookie学习笔记,告诉大家什么是Cookie,Cookie的功能有哪些? 如何创建、读取、删除Cookie,感兴趣的小伙伴们可以参考一下...

    GULINHAI123622019-06-20
  • PHP教程php7函数,声明,返回值等新特性介绍

    php7函数,声明,返回值等新特性介绍

    这篇文章主要介绍了php7函数,声明,返回值等新特性,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下 ...

    MRR3882019-10-04
  • PHP教程PHP单元测试PHPUnit简单用法示例

    PHP单元测试PHPUnit简单用法示例

    这篇文章主要介绍了PHP单元测试PHPUnit简单用法,结合实例形式分析了PHPUnit的安装、单元测试简单操作技巧,需要的朋友可以参考下 ...

    CyborgLin3272019-09-20
  • PHP教程PHP实现的curl批量请求操作示例

    PHP实现的curl批量请求操作示例

    这篇文章主要介绍了PHP实现的curl批量请求操作,结合实例形式分析了php使用curl进行批量请求处理的具体批量创建curl句柄、批量执行句柄、防卡死等相关操作...

    偶-木2292019-09-28
  • PHP教程PHP基于phpqrcode类生成二维码的方法详解

    PHP基于phpqrcode类生成二维码的方法详解

    这篇文章主要介绍了PHP基于phpqrcode类生成二维码的方法,结合实例形式详细分析了phpqrcode类的具体功能、使用方法及相关操作注意事项,需要的朋友可以参考...

    江南极客1582019-10-17
  • PHP教程PHP扩展mcrypt实现的AES加密功能示例

    PHP扩展mcrypt实现的AES加密功能示例

    这篇文章主要介绍了PHP扩展mcrypt实现的AES加密功能,结合实例形式分析了php基于mcrypt实现AES加密的相关操作技巧,需要的朋友可以参考下...

    five-zh3322019-06-21
  • PHP教程CodeIgniter框架钩子机制实现方法【hooks类】

    CodeIgniter框架钩子机制实现方法【hooks类】

    这篇文章主要介绍了CodeIgniter框架钩子机制实现方法,结合具体的hooks类文件描述了钩子机制的原理与相关操作技巧,需要的朋友可以参考下...

    dongxie5483962019-09-10