(十七)劍指offer之二叉樹中和為某一值的路徑

2021-07-26 03:23:53 字數 712 閱讀 9267

題目描述:

輸入一顆二叉樹和乙個整數,列印出二叉樹中結點值的和為輸入整數的所有路徑。

路徑定義為從樹的根結點開始往下一直到葉結點所經過的結點形成一條路徑。

/*

struct treenode

};*/

class solution

private:

vector

> result;

vector

path;

void find(treenode *root, int expectnumber, int currentnumber)

if(root->left != null)

find(root->left, expectnumber, currentnumber);

if(root->right != null)

find(root->right, expectnumber, currentnumber);

path.pop_back();

}};

star/fork/push 您的**,開源倉庫需要您的貢獻。

請檢視coding 題目**和收藏accepted**倉庫,進行coding!!!

劍指offer之二叉樹總結

會用遞迴了二叉樹的問題就會一大半了.一.用遞迴求解 對於要利用二叉樹的規律的題都可以利用它的左節點也是其左子樹的根節點的特性來遞迴求解。可以說那種引數有根節點的題一般都可以用遞迴來解決,來看看 劍指offer 中可用遞迴解決的題 1.根據前序遍歷的性質,第乙個元素必然就是root,那麼下面的工作就是...

劍指Offer之 二叉樹的深度

題目 1 求二叉樹的最大深度和最小深度。2 判斷一棵二叉樹是不是平衡二叉樹。include using namespace std struct binarytreenode binarytreenode int value m nvalue value m pleft null m pright ...

劍指offer之二叉樹的深度

輸入一棵二叉樹,求該樹的深度。從根結點到葉結點依次經過的結點 含根 葉結點 形成樹的一條路徑,最長路徑的長度為樹的深度。方法一 可以使用遞迴的方法,分別求左子樹和右子樹的深度,則樹的深度是 更大者 1。這是乙個遞迴的方法。方法二 使用層次遍歷的方法,每訪問一層,則深度 1,所有層的訪問結束之後,就等...