本文主要是介绍剑指offer 26.树的子结构。简单易懂0ms,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
class Solution {public boolean isSubStructure(TreeNode A, TreeNode B) {if(B == null || A == null) return false;if(A.val == B.val && dfs(A.left, B.left) && dfs(A.right, B.right)) return true;// 判断B在左子树还是右子树return isSubStructure(A.left, B) || isSubStructure(A.right, B);}public boolean dfs(TreeNode node1, TreeNode node2){// 先对node2进行判断,为空说明是子结构// 然后对node1进行判断,如果为空说明不是if(node2 == null) return true;if(node1 == null) return false;if(node1.val == node2.val){return dfs(node1.left, node2.left)&&dfs(node1.right, node2.right);}else{return false;}}
}
这篇关于剑指offer 26.树的子结构。简单易懂0ms的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!