mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-09-07 00:11:41 +08:00
存量题库数据更新
This commit is contained in:
@@ -1,56 +1,45 @@
|
||||
<p>在一个 m*n 的二维字符串数组中输出二叉树,并遵守以下规则:</p>
|
||||
<p>给你一棵二叉树的根节点 <code>root</code> ,请你构造一个下标从 <strong>0</strong> 开始、大小为 <code>m x n</code> 的字符串矩阵 <code>res</code> ,用以表示树的 <strong>格式化布局</strong> 。构造此格式化布局矩阵需要遵循以下规则:</p>
|
||||
|
||||
<ol>
|
||||
<li>行数 <code>m</code> 应当等于给定二叉树的高度。</li>
|
||||
<li>列数 <code>n</code> 应当总是奇数。</li>
|
||||
<li>根节点的值(以字符串格式给出)应当放在可放置的第一行正中间。根节点所在的行与列会将剩余空间划分为两部分(<strong>左下部分和右下部分</strong>)。你应该将左子树输出在左下部分,右子树输出在右下部分。左下和右下部分应当有相同的大小。即使一个子树为空而另一个非空,你不需要为空的子树输出任何东西,但仍需要为另一个子树留出足够的空间。然而,如果两个子树都为空则不需要为它们留出任何空间。</li>
|
||||
<li>每个未使用的空间应包含一个空的字符串<code>""</code>。</li>
|
||||
<li>使用相同的规则输出子树。</li>
|
||||
</ol>
|
||||
<ul>
|
||||
<li>树的 <strong>高度</strong> 为 <code>height</code> ,矩阵的行数 <code>m</code> 应该等于 <code>height + 1</code> 。</li>
|
||||
<li>矩阵的列数 <code>n</code> 应该等于 <code>2<sup>height+1</sup> - 1</code> 。</li>
|
||||
<li><strong>根节点</strong> 需要放置在 <strong>顶行</strong> 的 <strong>正中间</strong> ,对应位置为 <code>res[0][(n-1)/2]</code> 。</li>
|
||||
<li>对于放置在矩阵中的每个节点,设对应位置为 <code>res[r][c]</code> ,将其左子节点放置在 <code>res[r+1][c-2<sup>height-r-1</sup>]</code> ,右子节点放置在 <code>res[r+1][c+2<sup>height-r-1</sup>]</code> 。</li>
|
||||
<li>继续这一过程,直到树中的所有节点都妥善放置。</li>
|
||||
<li>任意空单元格都应该包含空字符串 <code>""</code> 。</li>
|
||||
</ul>
|
||||
|
||||
<p><strong>示例 1:</strong></p>
|
||||
<p>返回构造得到的矩阵<em> </em><code>res</code> 。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>示例 1:</strong></p>
|
||||
<img alt="" src="https://assets.leetcode.com/uploads/2021/05/03/print1-tree.jpg" style="width: 141px; height: 181px;" />
|
||||
<pre>
|
||||
<strong>输入:</strong>
|
||||
1
|
||||
/
|
||||
2
|
||||
<strong>输出:</strong>
|
||||
[["", "1", ""],
|
||||
["2", "", ""]]
|
||||
<strong>输入:</strong>root = [1,2]
|
||||
<strong>输出:</strong>
|
||||
[["","1",""],
|
||||
["2","",""]]
|
||||
</pre>
|
||||
|
||||
<p><strong>示例 2:</strong></p>
|
||||
|
||||
<p><strong>示例 2:</strong></p>
|
||||
<img alt="" src="https://assets.leetcode.com/uploads/2021/05/03/print2-tree.jpg" style="width: 207px; height: 302px;" />
|
||||
<pre>
|
||||
<strong>输入:</strong>
|
||||
1
|
||||
/ \
|
||||
2 3
|
||||
\
|
||||
4
|
||||
<strong>输出:</strong>
|
||||
[["", "", "", "1", "", "", ""],
|
||||
["", "2", "", "", "", "3", ""],
|
||||
["", "", "4", "", "", "", ""]]
|
||||
<strong>输入:</strong>root = [1,2,3,null,4]
|
||||
<strong>输出:</strong>
|
||||
[["","","","1","","",""],
|
||||
["","2","","","","3",""],
|
||||
["","","4","","","",""]]
|
||||
</pre>
|
||||
|
||||
<p><strong>示例 3:</strong></p>
|
||||
<p> </p>
|
||||
|
||||
<pre>
|
||||
<strong>输入:</strong>
|
||||
1
|
||||
/ \
|
||||
2 5
|
||||
/
|
||||
3
|
||||
/
|
||||
4
|
||||
<strong>输出:</strong>
|
||||
[["", "", "", "", "", "", "", "1", "", "", "", "", "", "", ""]
|
||||
["", "", "", "2", "", "", "", "", "", "", "", "5", "", "", ""]
|
||||
["", "3", "", "", "", "", "", "", "", "", "", "", "", "", ""]
|
||||
["4", "", "", "", "", "", "", "", "", "", "", "", "", "", ""]]
|
||||
</pre>
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<p><strong>注意:</strong> 二叉树的高度在范围 [1, 10] 中。</p>
|
||||
<ul>
|
||||
<li>树中节点数在范围 <code>[1, 2<sup>10</sup>]</code> 内</li>
|
||||
<li><code>-99 <= Node.val <= 99</code></li>
|
||||
<li>树的深度在范围 <code>[1, 10]</code> 内</li>
|
||||
</ul>
|
||||
|
Reference in New Issue
Block a user