給定乙個二叉樹,找出所有路徑中各節點相加總和等於給定目標值
的路徑。
乙個有效的路徑,指的是從根節點到葉節點的路徑。樣例
給定乙個二叉樹,和目標值 = 5
:
1
/ \2 4
/ \2 3
返回:
[
[1, 2, 2],
[1, 4]
]
思路:首先找到葉子節點,這樣從根節點到葉子結點才是路徑,隨後判斷該路徑一路上的節點值之和是否等於給定目標值。
每條路徑都存到小vector中,只有符合目標值的才加入到大vector中。
/**
* definition of treenode:
* class treenode
* }*/class solution
int currentsum=0;
vectorpath;
path(root,target,path,currentsum);
return sum;
}void path(treenode *root, int target,vectorpath,int currentsum)
//如果不是葉結點,則遍歷它的子結點
if(root->left!=null)
if(root->right!=null)
//在返回到父結點之前,在路徑上刪除當前結點,並在currentsum中減去該結點值
currentsum -= root->val;
path.pop_back();
}};
Lintcode 376 二叉樹的路徑和
給定乙個二叉樹,找出所有路徑中各節點相加總和等於給定目標值的路徑。乙個有效的路徑,指的是從根節點到葉節點的路徑。您在真實的面試中是否遇到過這個題?yes 樣例給定乙個二叉樹,和目標值 5 1 2 4 2 3返回 1,2,2 1,4 definition of treenode public clas...
lintcode 376 二叉樹的路徑和
給定乙個二叉樹,找出所有路徑中各節點相加總和等於給定 目標值 的路徑。乙個有效的路徑,指的是從根節點到葉節點的路徑。樣例 樣例1 輸入 5 輸出 1 2,2 1 4 說明 這棵樹如下圖所示 1 2 4 23對於目標總和為5,很顯然1 2 2 1 4 5 樣例2 輸入 3 輸出 說明 這棵樹如下圖所示...
376 二叉樹的路徑和
中文english 給定乙個二叉樹,找出所有路徑中各節點相加總和等於給定目標值的路徑。乙個有效的路徑,指的是從根節點到葉節點的路徑。樣例1 輸入 5輸出 1,2,2 1,4 說明 這棵樹如下圖所示 1 2 4 2 3 對於目標總和為5,很顯然1 2 2 1 4 5樣例2 輸入 3輸出 說明 這棵樹如...