擅长:python、mysql、java
<p>简单而粗糙:</p>
<pre><code>from collections import deque
def print_tree(root):
res = []
q = deque([root])
while q:
row = []
for _ in range(len(q)):
node = q.popleft()
if not node:
row.append("#")
continue
row.append(node.val)
q.append(node.left)
q.append(node.right)
res.append(row)
rows = len(res)
base = 2**(rows)
for r in range(rows):
for v in res[r]:
print("." * (base), end = "")
print(v, end = "")
print("." * (base - 1), end = "")
print("|")
base //= 2
print_tree(root)
</code></pre>