Leetcode PHP题解--D92 606. Construct String from Binary Tree
D92 606. Construct String from Binary Tree
题目链接
606. Construct String from Binary Tree
题目分析
输出二叉树的节点值。子树内容用半角括号括住,null值也需要括住。
思路
用全局变量保存字符串内容。保存节点值之前,添加括号。
注意,不能在节点值为null时也加括号。而是只在左子树为空,而右子树不为空时,才要把左子树的null部分用括号代替。
最终代码
<?php
/**
* Definition for a binary tree node.
* class TreeNode {
* public $val = null;
* public $left = null;
* public $right = null;
* function __construct($value) { $this->val = $value; }
* }
*/
class Solution {
protected $str = '';
/**
* @param TreeNode $t
* @return String
*/
function tree2str($t) {
$this->str .= $t->val;
if(!is_null($t->left)){
$this->str .= '(';
$this->tree2str($t->left);
$this->str .= ')';
}
if(!is_null($t->right)){
if(is_null($t->left)){
$this->str .= '()';
}
$this->str .= '(';
$this->tree2str($t->right);
$this->str .= ')';
}
return $this->str;
}
}
若觉得本文章对你有用,欢迎用爱发电资助。
No Comments