Python編程把二叉樹打印成多行代碼
題目描述
從上到下按層打印二叉樹,同一層結(jié)點從左至右輸出。每一層輸出一行。
思路:
1、把每層節(jié)點的val值用list存好
2、把每層節(jié)點存好:
①計算當層節(jié)點的個數(shù),這樣就保證下一步每層的結(jié)點都被pop光
②然后依次彈出從左到右的每個節(jié)點,然后在list中加入該節(jié)點對應(yīng)的左結(jié)點、右節(jié)點(如果存在的話)
代碼如下:
class TreeNode():
def __init__(self,x):
self.val = x
self.left = None
self.right = None
def function(root):
result = []
if not root:
return result
A = []
A.append(root)
while A:
temp = []
size = len(A)
for Node in A:
temp.append(Node.val)
result.append(temp)
for i in range(size):
node = A.pop(0)
if node.left:
A.append(node.left)
if node.right:
A.append(node.right)
return result
總結(jié)
以上就是本文關(guān)于Python編程把二叉樹打印成多行代碼的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
相關(guān)文章
python練習之循環(huán)控制語句 break 與 continue
這篇文章主要介紹了python循環(huán)控制語句 break 與 continue,break就像是終止按鍵,不管執(zhí)行到哪一步,只要遇到break,不管什么后續(xù)步驟,直接跳出當前循環(huán)2022-06-06
使用python檢測網(wǎng)頁文本內(nèi)容屏幕上的坐標
在 Web 開發(fā)中,經(jīng)常需要對網(wǎng)頁上的文本內(nèi)容進行處理和操作,有時候,我們可能需要知道某個特定文本在屏幕上的位置,以便進行后續(xù)的操作,所以本文將介紹如何使用 Python 中的 Selenium 和 BeautifulSoup 庫來檢測網(wǎng)頁文本內(nèi)容在屏幕上的坐標,需要的朋友可以參考下2024-04-04

