题目:
代码(首刷看解析 day23):
class Solution {
public:
void dfs(TreeNode* root,vector<int>& seq){
if(!root->left&&!root->right){
seq.emplace_back(root->val);
}else{
if(root->left){
dfs(root->left,seq);
}
if(root->right){
dfs(root->right,seq);
}
}
}
bool leafSimilar(TreeNode* root1, TreeNode* root2) {
vector<int> seq1;
dfs(root1,seq1);
vector<int> seq2;
dfs(root2,seq2);
if(seq1==seq2) return true;
else return false;
}
};
深度优先搜索,使用递归;递归主要看结束递归条件和,递归循环条件;