42、PHP 实现把二叉树打印成多行

题目: PHP 实现把二叉树打印成多行

描述:
从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。

<?php

/*class TreeNode{
    var $val;
    var $left = NULL;
    var $right = NULL;
    function __construct($val){
        $this->val = $val;
    }
}*/
function MyPrint($pRoot)
{
    $q = new SplQueue();
    if(!$pRoot){
        return [];
    }
    $result = [];
    $i=0;
    $q->push($pRoot);
    while(!$q->isEmpty()){
        $count = $q->count();
        while($count--){
            $t = $q->shift();
            if($t){
                $result[$i][] = $t->val;
                $q->push($t->left);
                $q->push($t->right);
            }
        }
        $i++;
    }
    return $result;
}

相关推荐

  1. 42PHP 实现打印

    2024-07-21 22:54:04       16 阅读
  2. 538.搜索转换累加

    2024-07-21 22:54:04       23 阅读
  3. 39、PHP 实现的下一个结点(含源码)

    2024-07-21 22:54:04       15 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-21 22:54:04       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-21 22:54:04       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-21 22:54:04       45 阅读
  4. Python语言-面向对象

    2024-07-21 22:54:04       55 阅读

热门阅读

  1. 防范缓冲区溢出攻击的方法

    2024-07-21 22:54:04       15 阅读
  2. 【如何使用Python编程】

    2024-07-21 22:54:04       22 阅读
  3. 【Python中的列表是什么】

    2024-07-21 22:54:04       20 阅读
  4. 数学建模--灰色关联分析法

    2024-07-21 22:54:04       19 阅读