只要是兩數(shù)之和的題言询,一定要記得先嘗試用HashSet來做!0烈恕T撕肌!:洹A俱尽!
我們遍歷二叉樹就行报嵌,然后用一個 HashSet虱咧,在遞歸函數(shù)函數(shù)中,如果 root 為空锚国,返回 false腕巡。如果 k 減去當前結(jié)點值在 HashSet 中存在,直接返回 true血筑;否則就將當前結(jié)點值加入 HashSet绘沉,然后對左右子結(jié)點分別調(diào)用遞歸函數(shù)并且或起來返回即可。
最簡單的方法豺总,對樹進行中序遍歷车伞,這樣得到的數(shù)組就是有序的,然后雙指針移動計算兩個元素的和喻喳。