LintCode 二叉樹的所有路徑

2021-07-30 23:08:07 字數 1221 閱讀 4230

1.描述

給一棵二叉樹,找出從根節點到葉子節點的所有路徑。

哪家公司問你的這個題?

樣例 給出下面這棵二叉樹:

1

/ \

2 3

\ 5

所有根到葉子的路徑為:

[

"1->2->5",

"1->3"

]

2.分析

首先需要找到葉子節點,從根節點到任乙個葉子節點中間的路徑都是乙個string,當遍歷到當前節點不是

葉子節點時,把當前節點加入string中,之後繼續往下遍歷直到到達葉子節點把這一條路徑存入vector中。

3.**

/*** definition of treenode:

* class treenode

* }*/

class solution

string t;

if(root->left!=null)//若左子樹不為空,把左子樹的節點加入到路徑t中

if(root->right!=null)//若右子樹不為空,把右子樹的節點加入到路徑t中

}vectorbinarytreepaths(treenode* root)

};4.總結

關於這類深度路徑的題目都需要先找到葉子節點,從根節點到葉子節點的路徑是通過

遍歷每乙個節點得到的,若當前節點不是葉子節點把他加入路徑中,若是,則該條路徑

遍歷結束存入vector中。

LintCode 二叉樹的所有路徑

二叉樹的所有路徑 給一棵二叉樹,找出從根節點到葉子節點的所有路徑。樣例 給出下面這棵二叉樹 1 2 3 5 所有根到葉子的路徑為 1 2 5 1 3 definition of treenode public class treenode public class solution public v...

LintCode 二叉樹的所有路徑

題目描述 給一棵二叉樹,找出從根節點到葉子節點的所有路徑。樣例 給出下面這棵二叉樹 1 2 3 5所有根到葉子的路徑為 1 2 5 1 3 做題思路 題目要求在輸出時,陣列中輸出的是一串路徑,所以,在類內呼叫已寫的遞迴函式,對遞迴函式進行編寫 定義樹的結點 陣列物件和字串。如果左子樹和右子樹都為空,...

Lintcode 二叉樹的所有路徑

給一棵二叉樹,找出從根節點到葉子節點的所有路徑。yes樣例給出下面這棵二叉樹 1 2 3 5所有根到葉子的路徑為 1 2 5 1 3 思路 一般二叉樹的問題用遞迴解決比較簡潔。這裡其實是先序遍歷 在庫檔案string中,to string int value 是把乙個整數轉換為字串 兩個字串使用 連...