LeetCode 2022.7.15每日一题 558. 四叉树交集

题目链接

558. 四叉树交集

题目代码

class Solution {
public:
    Node* intersect(Node* quadTree1, Node* quadTree2) {

        if (quadTree1->isLeaf){
            return quadTree1->val ? new Node(true, true, nullptr,
                                             nullptr, nullptr, nullptr) : quadTree2;
        }

        if (quadTree2->isLeaf){
            return quadTree2->val ? new Node(true, true, nullptr,
                                             nullptr, nullptr, nullptr) : quadTree1;
        }

        Node* t1 = intersect(quadTree1->topLeft, quadTree2->topLeft);
        Node* t2 = intersect(quadTree1->topRight, quadTree2->topRight);
        Node* t3 = intersect(quadTree1->bottomLeft, quadTree2->bottomLeft);
        Node* t4 = intersect(quadTree1->bottomRight, quadTree2->bottomRight);

        if (t1->isLeaf && t2->isLeaf && t3->isLeaf && t4->isLeaf){
            if (t1->val == t2->val && t2->val == t3->val && t3->val == t4->val){
                return new Node(t1->val, true, nullptr, nullptr, nullptr, nullptr);
            }
        }

        return new Node(false, false, t1, t2, t3, t4);
    }
};
posted @   Frodo1124  阅读(24)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
点击右上角即可分享
微信分享提示