Skip to content

Instantly share code, notes, and snippets.

@Cyber-Neuron
Created February 13, 2019 09:48
Show Gist options
  • Save Cyber-Neuron/cdb95218ae2c9b9719e5aaab16d07ad8 to your computer and use it in GitHub Desktop.
Save Cyber-Neuron/cdb95218ae2c9b9719e5aaab16d07ad8 to your computer and use it in GitHub Desktop.
输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)
# -*- coding:utf-8 -*-
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
class Solution:
def HasSubtree(self, pRoot1, pRoot2):
if pRoot2 is None:
return False
rst1=[]
rst2=[]
self.pre(pRoot1,rst1)
self.pre(pRoot2,rst2)
return set(rst2).issubset(rst1)
# write code here
def pre(self,tree,rst):
if tree is None:
return
rst.append(tree.val)
self.pre(tree.left,rst)
self.pre(tree.right,rst)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment