当前位置:Gxlcms > PHP教程 > PHP从上往下打印二叉树实现方法

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

时间:2021-07-01 10:21:17 帮助过:25人阅读

本文主要介绍了PHP实现从上往下打印二叉树的方法,涉及php二叉树遍历相关操作技巧,需要的朋友可以参考下,希望能帮助到大家。

问题

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

解决思路

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

实现代码


/*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;
}

相关推荐:

PHP顺序打印二叉树的实现方法

PHP实现先序、中序及后序遍历二叉树操作实例

PHP如何实现判断二叉树是否对称

以上就是PHP从上往下打印二叉树实现方法的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行