在某一棵二叉樹中找出和為某一值的所有路徑
輸入格式:第一行 期望值
第二行 按照層序遍歷順序給出的完全二叉樹, 若空用 # 表示
輸入:6 3 1 # # 4 1 # # # # # # # 1
輸出:6 3
6 1 1 1
#define _crt_secure_no_warings
#include #include #include #include #include using namespace std;
struct treenode
};void find(treenode* root, int expectnumber, vector> &res, vector&path)
if (root->left)
find(root->left, expectnumber, res, path);
if (root->right)
find(root->right, expectnumber, res, path);
path.pop_back();
}vector> findpath(treenode* root, int expectnumber)
treenode *constructbinarytree(vector&arr, int len, int i)
return root;
}void preordertra(treenode *root) //遞迴前序遍歷 }
int main()
treenode* root = constructbinarytree(vec, (int)vec.size(), 0);
//preordertra(root);
vector> res = findpath(root, expectnum);
for (int i = 0; i < (int)res.size(); i++)
system("pause");
}
程式設計練習之一顆二叉樹包含另一顆二叉樹
劍指offer上的一道程式設計練習,如何確定二叉樹a包含一棵相對小一點的二叉樹b?思路 用兩個函式實現,第乙個首先判斷根結點是否相等,第二個函式繼續判斷子結構是否相等 函式一 第一步,首先從根結點入手,判斷proota的值是否與prootb的根結點的值是否相等。若相等,則在比較a樹的子結構是否包含b...
輸入一顆二叉樹,判斷該二叉樹是否為平衡樹
package dlinkedlist author zhou jian date 2020 2020 3 27 0027 17 04 輸入一棵二叉樹,判斷該二叉樹是否是平衡二叉樹。左右兩顆子樹的深度相差不超過1 public class problem26 左右子樹的深度的差大於1的話則返回fal...
二叉樹面試題(二) 求一顆二叉樹的映象
一 二叉樹的映象就是乙個樹在鏡子裡的成像 好吧!初中的物理知識來了,哈哈,其實很簡單,採用遞迴的方法求二叉樹的映象 1 如果樹為空,直接返回null 2 如果樹不為空,求其左子樹和右子樹的映象,遞迴完成後,將左子樹的映象放在根結點的右邊,將右子樹的映象放在根結點的左邊 二 圖說 三 實現 inclu...