LeetCode 另乙個樹的子樹

2021-09-18 03:01:47 字數 1156 閱讀 5016

給定兩個非空二叉樹 s 和 t,檢驗 s 中是否包含和 t 具有相同結構和節點值的子樹。s 的乙個子樹包括 s 的乙個節點和這個節點的所有子孫。s 也可以看做它自身的一棵子樹。

示例 1:

給定的樹 s:

3/ \

4 5

/ \1 2

給定的樹 t:

4 / \

1 2

返回 true,因為 t 與 s 的乙個子樹擁有相同的結構和節點值。

示例 2:

給定的樹 s:

3/ \

4 5

/ \1 2/0

給定的樹 t:

4/ \

1 2

返回 false。

思路分析:先判樹s是否與樹t相等,如果不相等,則判斷樹t是否在樹s的左子樹、右子樹中。

/**

* definition for a binary tree node.

* struct treenode

* };

*/class

solution

//然後判斷t是否在s的子樹中

return s != null &&

(issubtree

(s->left, t)

||issubtree

(s->right, t));

}//判斷以s為根的樹是否與以t為根的樹相同

bool myissubtree

(treenode* s, treenode* t)

if(s-

>val != t-

>val)

//然後比較s->left和t->left是否相等,s->right和t->right是否相等

LeetCode 另乙個樹的子樹

給定兩個非空二叉樹 s 和 t,檢驗 s 中是否包含和 t 具有相同結構和節點值的子樹。s 的乙個子樹包括 s 的乙個節點和這個節點的所有子孫。s 也可以看做它自身的一棵子樹。示例1 給定的樹 s 給定的樹 t 返回 true,因為 t 與 s 的乙個子樹擁有相同的結構和節點值。示例2 給定的樹 s...

LeetCode另乙個樹的子樹

給定兩個非空二叉樹 s 和 t,檢驗 s 中是否包含和 t 具有相同結構和節點值的子樹。s 的乙個子樹包括 s 的乙個節點和這個節點的所有子孫。s 也可以看做它自身的一棵子樹。示例 1 給定的樹 s 給定的樹 t 返回 true,因為 t 與 s 的乙個子樹擁有相同的結構和節點值。示例 2 給定的樹...

另乙個樹的子樹

給定兩個非空二叉樹 s 和 t,檢驗 s 中是否包含和 t 具有相同結構和節點值的子樹。s 的乙個子樹包括 s 的乙個節點和這個節點的所有子孫。s 也可以看做它自身的一棵子樹。示例 1 給定的樹 s 3 4 5 1 2 給定的樹 t 4 1 2 返回 true,因為 t 與 s 的乙個子樹擁有相同的...