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

这篇具有很好参考价值的文章主要介绍了Leetcode—100.相同的树【简单】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

2023每日刷题(十八)

Leetcode—100.相同的树

Leetcode—100.相同的树【简单】,LeetCode刷题,leetcode,算法,经验分享,c++,C语言,数据结构,二叉树

递归实现代码

/**
 * 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;
}

运行结果

Leetcode—100.相同的树【简单】,LeetCode刷题,leetcode,算法,经验分享,c++,C语言,数据结构,二叉树

先序序列化实现代码

/**
 * 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 -1

class 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;
    }
};

运行结果

Leetcode—100.相同的树【简单】,LeetCode刷题,leetcode,算法,经验分享,c++,C语言,数据结构,二叉树
之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!文章来源地址https://www.toymoban.com/news/detail-743087.html

到了这里,关于Leetcode—100.相同的树【简单】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 二叉树OJ题:LeetCode--100.相同的树

    朋友们、伙计们,我们又见面了,本期来给大家解读一下LeetCode中第100道二叉树OJ题,如果看完之后对你有一定的启发,那么请留下你的三连,祝大家心想事成! 数据结构与算法专栏: 数据结构与算法 个  人  主  页  : stackY、 C 语 言 专 栏 : C语言:从入门到精通 LeetCo

    2024年02月11日
    浏览(27)
  • 二叉树(中)+Leetcode每日一题——“数据结构与算法”“剑指Offer55-I. 二叉树的深度”“100.相同的树”“965.单值二叉树”

    各位CSDN的uu们你们好呀,今天继续数据结构与算法专栏中的二叉树,下面,让我们进入二叉树的世界吧!!! 二叉树(上)——“数据结构与算法”_认真学习的小雅兰.的博客-CSDN博客 二叉树链式结构的实现 二叉树链式结构的实现 求二叉树的高度 但是这种写法有很大的问题

    2024年02月17日
    浏览(29)
  • leetcode-相同的树

    100. 相同的树 使用递归的方法

    2024年01月24日
    浏览(31)
  • leetcode_19_相同的树

    2024年02月07日
    浏览(32)
  • 【Leetcode】相同的树、对称二叉树、另一颗树的子树

    目录 💡相同的树 题目描述 思路: 代码: 💡对称二叉树 题目描述 思路: 代码: 💡另一棵树的子树 题目描述 思路: 代码: 💡总结   给你两棵二叉树的根节点  p  和  q  ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则

    2024年02月04日
    浏览(33)
  • Java算法 leetcode简单刷题记录4

    买卖股票的最佳时机: https://leetcode.cn/problems/best-time-to-buy-and-sell-stock/ 笨办法: 记录当天的值及之后的最大值,相减得到利润; 所有的天都计算下,比较得到利润最大值; 会超时 记录过程中遇到的最低值,每当有利润大于0及大于上一个利润值的情况,赋值; 最小和分割:

    2024年01月23日
    浏览(34)
  • Java算法 leetcode简单刷题记录6

    环和杆: https://leetcode.cn/problems/rings-and-rods/ 统计范围内的元音字符串数: https://leetcode.cn/problems/count-the-number-of-vowel-strings-in-range/ 最长平衡子字符串: https://leetcode.cn/problems/find-the-longest-balanced-substring-of-a-binary-string/ K 个元素的最大和: https://leetcode.cn/problems/maximum-sum-with-exa

    2024年01月24日
    浏览(38)
  • LeetCode刷题——55. 跳跃游戏(HOT100)

    ✊✊✊🌈大家好!本篇文章将较详细介绍贪心相关的题目 55. 跳跃游戏 ,提供两种解法。代码语言为: C++代码 😇。 🔒1、题目: 给你一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最

    2024年01月20日
    浏览(37)
  • LeetCode刷题——394. 字符串解码(HOT100)

    ✊✊✊🌈大家好!本篇文章将较详细介绍栈的题目 394. 字符串解码 ,提供 栈和递归 两种解法。代码语言为: C++代码 😇。 🔒1、题目: 给定一个经过编码的字符串,返回它解码后的字符串。 编码规则为: k[encoded_string] ,表示其中方括号内部的 encoded_string 正好重复 k 次。注

    2024年01月19日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包