你需要採用前序遍歷的方式,將乙個二叉樹轉換成乙個由括號和整數組成的字串。空節點則用一對空括號 "()
"表示。而且你需要省略所有不影響字串與原始二叉樹之間的一對一對映關係的空括號對。
示例 1
:輸入: 二叉樹: [
1,2,3,4
]
1 /\
23/
4輸出:
"1(2(4))(3)
"解釋: 原本將是「
1(2(4)())(3
())」,
在你省略所有不必要的空括號對之後,
它將是「
1(2(4))(3
)」。示例 2:
輸入: 二叉樹: [
1,2,3,null,4
]
1 /\
23\
4輸出:
"1(2()(4))(3)
"解釋: 和第乙個示例相似,
除了我們不能省略第乙個對括號來中斷輸入和輸出之間的一對一對映關係。
stringbuilder sb = newstringbuilder();
treenode pre = null
;
public
string tree2str(treenode t)
private
void
helper(treenode root, treenode pre) "(
" pre =root;
helper(root.left, pre);
helper(root.right, pre);
//遍歷完當前節點後關閉括號)"
); }
根據二叉樹建立字串
你需要採用前序遍歷的方式,將乙個二叉樹轉換成乙個由括號和整數組成的字串。空節點則用一對空括號 表示。而且你需要省略所有不影響字串與原始二叉樹之間的一對一對映關係的空括號對。示例 1 輸入 二叉樹 1 2,3 4 1 23 4 輸出 1 2 4 3 解釋 原本將是 1 2 4 3 在你省略所有不必要的...
演算法 根據二叉樹建立字串
本題 於 606.根據二叉樹建立字串。是乙個easy型別的題,但是卻對我們掌握遞迴思想有很大的幫助。有人說,理解遞迴,首先要理解遞迴。可見遞迴思想並不是那麼直白,需要我們自己去理解。遞迴就是乙個不斷呼叫自身的乙個過程,並且隨著遞迴深度增加,鎖解決的問題越來越小,當滿足遞迴終止條件之後,解決的小問題拼...
LeetCode 根據二叉樹建立字串(遞迴)
你需要採用前序遍歷的方式,將乙個二叉樹轉換成乙個由括號和整數組成的字串。空節點則用一對空括號 表示。而且你需要省略所有不影響字串與原始二叉樹之間的一對一對映關係的空括號對。示例 1 輸入 二叉樹 1,2,3,4 1 2 3 4 輸出 1 2 4 3 解釋 原本將是 1 2 4 3 在你省略所有不必要...