二叉樹的所有路徑

2021-07-30 17:05:43 字數 870 閱讀 2279

一、問題描述

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

給出下面這棵二叉樹:

1

/ \

2 3

\ 5

所有根到葉子的路徑為:

[

"1->2->5",

"1->3"

]

二、解題思路

運用遞迴的思想查詢二叉樹的所有路徑,定義乙個向量用來儲存路徑,然後運用前序遍歷二叉樹,返回查詢的的路徑,在庫檔案string中,to_string(int value)是把乙個整數型轉換為字元型,兩個字串用「+」連線,是字串的無空格連線。

三、我的**

class solution

void find(treenode* root,vector&s,string path)

if(root->left!=null)

find(root->left,s,path+"->"+to_string(root->left->val));

if(root->right!=null)

find(root->right,s,path+"->"+to_string(root->right->val));}};

四、我的感想

求路徑的大體思路和求二叉樹的路徑和差不多,但是還要轉換成string型別的,對這點了解甚少,所以一開始老是不對,最後上網搜查了一下,才知道轉換成字元型要用to_string(int value),感覺又收穫了新知識,過程雖艱難但是結果還是很開心的。

二叉樹的所有路徑

描述 給一棵二叉樹,找出從根節點到葉子節點的所有路徑。樣例 給出下面這棵二叉樹 1 2 3 5 所有根到葉子的路徑為 1 2 5 1 3 解題思路 要找到二叉樹的所有路徑,就相當於從根節點出發一直到葉子節點。我們可以在遍歷的基礎之上完成這項操作,但是又有所不同。首先從根節點出發,先遍歷它的左子樹,直...

二叉樹的所有路徑

問題描述 給一棵二叉樹,找出從根節點到葉子節點的所有路徑。樣例 給出下面這棵二叉樹 1 2 3 5所有根到葉子的路徑為 1 2 5 1 3 解題思路 若二叉樹不為空,將節點新增到向量中,左右子樹進行遞迴,通過函式呼叫然後輸出。definition of treenode class treenode...

二叉樹的所有路徑

問題描述 給一棵二叉樹,找出從根節點到葉子節點的所有路徑。樣例 給出下面這棵二叉樹 1 2 3 5所有根到葉子的路徑為 1 2 5 1 3 思路 因為返回型別是vector,故需要建立新的函式而且需要將root的val型別轉換為string型別,用到函式to string int 兩個字串使用 連線...