判斷二叉樹是否相同

2022-02-04 08:39:20 字數 623 閱讀 7585

判斷二叉樹是否相同

當root1的左子樹與root2的左子樹相同,root1的右子樹與root2的右子樹相同時,這兩顆二叉樹相同。

當root1的左子樹與root2的右子樹相同,root1的右子樹與root2的左子樹相同時,這兩顆二叉樹同樣相同。

1

bool isequals(bnode* root1,bnode*root2) 2

7else

if (root1==null || root2==null) //其中一棵樹為空8

11else

12

1718

bool is_left = isequals(root1->left,root2->left); //左子樹相等?

19bool is_right = isequals(root1->right,root2->right); //右子樹相等

2021

if (is_left&&is_right) //左右子樹對應相等

22

25else

26

34else35

38}

39}

4041 }

二叉樹 判斷相同二叉搜尋樹

給定乙個插入序列就可以唯一確定一棵二叉搜尋樹。然而,一棵給定的二叉搜尋樹卻可以由多種不同的插入序列得到。例如分別按照序列和插入初始為空的二叉搜尋樹,都得到一樣的結果。於是對於輸入的各種插入序列,你需要判斷它們是否能生成一樣的二叉搜尋樹。方法 為每個序列建樹,並利用每棵樹的中序遍歷判斷相同 inclu...

判斷二叉樹是否平衡 是否完全二叉樹 是否二叉排序樹

1.判斷二叉樹是否平衡 求樹的高度 int treedepth node t return0 判斷二叉樹是否平衡 int isbalanced node t 2.判斷二叉樹是否相同 判斷兩棵二叉樹是否相同 int comptree node tree1,node tree2 拷貝二叉樹 void c...

判斷兩個二叉樹是否相同

判斷兩個二叉樹是否相同 遞迴解法 public boolean issametreerec treenode p,treenode q if p null q null else else else 第一次寫了乙個是這樣的,自己覺得也可以,提交時不能ac,想了下根本是自己演算法立足點不對,分享下 對...