題目描述:
給定兩個二叉樹,編寫乙個函式來檢驗它們是否相同。
如果兩個樹在結構上相同,並且節點具有相同的值,則認為它們是相同的。
示例:
輸入: 1 1
/ \ / \
2 3 2 3
[1,2,3], [1,2,3]
輸出: true
輸入: 1 1
/ \
2 2
[1,2], [1,null,2]
輸出: false
輸入: 1 1
/ \ / \
2 1 1 2
[1,2,1], [1,1,2]
輸出: false
解題思路:
先判斷根節點是否相同,然後使用遞迴的方法來判斷根節點的左節點是否相同,再判斷根節點的右節點是否相同,其中,只要有一項的要求為false,則最後的結果便是false。兩個二叉樹相同的條件是:①兩個節點均為空;②兩個節點均非空但是它們的值相等。
ac**:
/**
* definition for a binary tree node.
* struct treenode
* };
*/class solution
else if(p == null && q != null)
else if(p != null && q == null)
else if(p->val != q->val)
bool left = issametree(p->left, q->left);
bool right = issametree(p->right, q->right);
flag = (left && right);
return flag;
}};
LeetCode 100 相同的樹
給定兩個二叉樹,編寫乙個函式來檢驗它們是否相同。如果兩個樹在結構上相同,並且節點具有相同的值,則認為它們是相同的。示例 1 輸入 1 1 2 3 2 3 1,2,3 1,2,3 輸出 true示例 2 輸入 1 1 2 2 1,2 1,null,2 輸出 false示例 3 輸入 1 1 2 1 1...
leetcode100 相同的樹
給定兩個二叉樹,編寫乙個函式來檢驗它們是否相同。如果兩個樹在結構上相同,並且節點具有相同的值,則認為它們是相同的。示例 1 輸入 1 1 2 3 2 3 1,2,3 1,2,3 輸出 true 示例 2 輸入 1 1 2 2 1,2 1,null,2 輸出 false 示例 3 輸入 1 1 2 1...
Leetcode 100 相同的樹
給定兩個二叉樹,編寫乙個函式來檢驗它們是否相同。如果兩個樹在結構上相同,並且節點具有相同的值,則認為它們是相同的。示例 1 輸入 1 1 2 3 2 3 1,2,3 1,2,3 輸出 true 示例 2 輸入 1 1 2 2 1,2 1,null,2 輸出 false 示例 3 輸入 1 1 2 1...