【 華為OD機試 2023】 創(chuàng)建二叉樹(C++ Java JavaScript Python)
1、先創(chuàng)建值為-1的根結(jié)點,根節(jié)點在第0層;
2、然后根據(jù)operations依次添加節(jié)點: operations\[i\] = \[height, index\] 表示對第 height 層的第index 個節(jié)點node, 添加值為 i 的子節(jié)點:
-?? 若node 無「左子節(jié)點」,則添加左子節(jié)點;
-?? 若node 有「左子節(jié)點」,但無「右子節(jié)點」,則添加右子節(jié)點;
-?? 否則不作任何處理。
height、index 均從0開始計數(shù);
index 指所在層的創(chuàng)建順序。
注意:
-?? 輸入用例保證每次操作對應(yīng)的節(jié)點已存在;
-?? 控制臺輸出的內(nèi)容是根據(jù)返回的樹根節(jié)點,按照層序遍歷二叉樹打印的結(jié)果。版權(quán)聲明:本文為CSDN博主「算法大師」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/banxia_frontend/article/details/129309336華為OD機試2022&2023(C++Java JS Py):
https://blog.csdn.net/banxia_frontend/category_12225173.html
華為OD機試2023最新題庫 更新中~(C++Java JS Py):
https://blog.csdn.net/banxia_frontend/category_12228764.html
華為OD機試題庫 復(fù)盤中~(C++Java JS Py):
https://blog.csdn.net/banxia_frontend/category_12257144.html
請按下列描述構(gòu)建一顆二叉樹,并返回該樹的根節(jié)點:
1、先創(chuàng)建值為-1的根結(jié)點,根節(jié)點在第0層;
2、然后根據(jù)operations依次添加節(jié)點: operations\[i\] = \[height, index\] 表示對第 height 層的第index 個節(jié)點node, 添加值為 i 的子節(jié)點:
-?? 若node 無「左子節(jié)點」,則添加左子節(jié)點;
-?? 若node 有「左子節(jié)點」,但無「右子節(jié)點」,則添加右子節(jié)點;
-?? 否則不作任何處理。
height、index 均從0開始計數(shù);
index 指所在層的創(chuàng)建順序。
注意:
-?? 輸入用例保證每次操作對應(yīng)的節(jié)點已存在;
-?? 控制臺輸出的內(nèi)容是根據(jù)返回的樹根節(jié)點,按照層序遍歷二叉樹打印的結(jié)果。
標(biāo)簽: