加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
100.same-tree.c 1.19 KB
一键复制 编辑 原始数据 按行查看 历史
sun 提交于 2024-12-01 21:11 . first init
/*
* @lc app=leetcode.cn id=100 lang=c
* @lcpr version=30204
*
* [100] 相同的树
*/
// @lcpr-template-start
#include <stdbool.h>
#include <stdio.h>
// @lcpr-template-end
// @lc code=start
/**
* Definition for a binary tree node.
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
/*
struct TreeNode
{
int val;
struct TreeNode *left;
struct TreeNode *right;
};
*/
// 把这两棵树遍历一下就行,深度优先,左右左
void IsSameTree(struct TreeNode *p, struct TreeNode *q, bool *ret)
{
if (p != NULL && q != NULL)
{
IsSameTree(p->left, q->left, ret);
IsSameTree(p->right, q->right, ret);
if (p->val != q->val)
*ret = false;
}
else if (p==NULL && q==NULL)
{
return;
}
else
{
*ret = false;
return;
}
}
bool isSameTree(struct TreeNode *p, struct TreeNode *q)
{
bool ret = true;
IsSameTree(p, q, &ret);
return ret;
}
// @lc code=end
/*
// @lcpr case=start
// [1,2,3]\n[1,2,3]\n
// @lcpr case=end
// @lcpr case=start
// [1,2]\n[1,null,2]\n
// @lcpr case=end
// @lcpr case=start
// [1,2,1]\n[1,1,2]\n
// @lcpr case=end
*/
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化