
给你两个四叉树quadTree 1 和 quadTree 2 。其中 quadTree 1 表示一个 n * n 二进制矩阵而 quadTree 2 表示另一个 n * n 二进制矩阵。请你返回一个表示 n * n 二进制矩阵的四叉树它是 quadTree 1 和 quadTree 2 所表示的两个二进制矩阵进行按位逻辑或运算的结果。注意当 isLeaf 为 False 时你可以把 True 或者 False 赋值给节点两种值都会被判题机制接受。四叉树数据结构中每个内部节点只有四个子节点。此外每个节点都有两个属性val 储存叶子结点所代表的区域的值。1 对应 True 0 对应 False isLeaf : 当这个节点是一个叶子结点时为 True 如果它有 4 个子节点则为 False 。class Node { public boolean val; public boolean isLeaf; public Node topLeft; public Node topRight; public Node bottomLeft; public Node bottomRight; }我们可以按以下步骤为二维区域构建四叉树如果当前网格的值相同即全为 0 或者全为 1 将 isLeaf 设为 True 将 val 设为网格相应的值并将四个子节点都设为 Null 然后停止。如果当前网格的值不同将 isLeaf 设为 False 将 val 设为任意值然后如下图所示将当前网格划分为四个子网格。使用适当的子网格递归每个子节点。如果你想了解更多关于四叉树的内容可以参考 wiki 。