当前位置:首页 > 编程笔记 > 正文
已解决

Leetcode—100.相同的树【简单】

来自网友在路上 153853提问 提问时间:2023-11-04 15:20:35阅读次数: 53

最佳答案 问答题库538位专家为你答疑解惑

2023每日刷题(十八)

Leetcode—100.相同的树

在这里插入图片描述

递归实现代码

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     struct TreeNode *left;*     struct TreeNode *right;* };*/
bool isSameTree(struct TreeNode* p, struct TreeNode* q) {if(p == NULL && q == NULL) {return true;}if((!p && q) || (p && !q)) {return false;}if(p->val != q->val) {return false;}if(isSameTree(p->left, q->left) && isSameTree(p->right, q->right)) {return true;}return false;
}

运行结果

在这里插入图片描述

先序序列化实现代码

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode() : val(0), left(nullptr), right(nullptr) {}*     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}*     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/#define nulll -1class Solution {
public:void preorderseq(TreeNode* b, vector<int> &pre) {if(b) {// 根pre.push_back(b->val);// 左preorderseq(b->left, pre);// 右preorderseq(b->right, pre);} else {pre.push_back(nulll);}}bool isSameTree(TreeNode* p, TreeNode* q) {if(p == nullptr && q == nullptr) {return true;}if((!p && q) || (p && !q)) {return false;}vector<int> pre1, pre2;preorderseq(p, pre1);preorderseq(q, pre2);if(pre1.size() != pre2.size()) {return false;}for(int i = 0; i < pre1.size(); i++) {if(pre1[i] != pre2[i]) {return false;}}return true;}
};

运行结果

在这里插入图片描述
之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"Leetcode—100.相同的树【简单】":http://eshow365.cn/6-31915-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!