一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 455|回复: 7
收起左侧

[树/链表/图] isSubTree那题经典follow up想考察什么?

[复制链接] |试试Instant~ |关注本帖
会编程的猪先生 发表于 2015-7-26 12:52:31 | 显示全部楼层 |阅读模式

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
本帖最后由 会编程的猪先生 于 2015-7-26 13:57 编辑

最近看面经,发现binary tree那道判断isSubTree常常有个follow up:
what if one tree is significantly larger than the other one?

这个我该如何考虑呢?
水逼一枚 发表于 2015-7-26 13:26:15 | 显示全部楼层
请问一下这个题的原型是lintcode上那道Subtree吗?没看到有说是BST啊?
回复 支持 反对

使用道具 举报

 楼主| 会编程的猪先生 发表于 2015-7-26 13:57:37 | 显示全部楼层
水逼一枚 发表于 2015-7-26 13:26
请问一下这个题的原型是lintcode上那道Subtree吗?没看到有说是BST啊?

笔误,已修改
回复 支持 反对

使用道具 举报

水逼一枚 发表于 2015-7-26 14:25:36 | 显示全部楼层

好的,所以这个follow up你怎么看呢?这个题我记得我做的时候就是递归中还嵌套着递归,实际上会有很多重复运算,但是我觉得这些重复运算又没法省去。所以是不是还是在时间上有很大影响呢?

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

handsomecool 发表于 2015-7-26 14:32:52 | 显示全部楼层
这里有O(n)的解法,不知道是不是题目想要的答案: http://www.geeksforgeeks.org/che ... -binary-tree-set-2/
回复 支持 反对

使用道具 举报

zhuli19901106 发表于 2015-7-26 17:01:55 | 显示全部楼层
handsomecool 发表于 2015-7-26 14:32
这里有O(n)的解法,不知道是不是题目想要的答案: http://www.geeksforgeeks.org/check-binary-tree-subtree- ...

没错,昨天我闭门想了一个多钟头,就是搞出这个算法。原来geek上面还真有。
不过昨天我一直没想出证明这算法正确性的依据,总觉得可能会有反例。

思路就是求出两个遍历序列(前中或者中后),然后用模式匹配算法判断包含关系,这样就可以做到线性复杂度了。

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

zhuli19901106 发表于 2015-7-26 17:03:42 | 显示全部楼层
水逼一枚 发表于 2015-7-26 13:26
请问一下这个题的原型是lintcode上那道Subtree吗?没看到有说是BST啊?

这题可以有线性的算法,看我那题的解法3,昨天刚想出来的。这题被定义为简单题其实不合理。
回复 支持 反对

使用道具 举报

 楼主| 会编程的猪先生 发表于 2015-7-27 01:10:59 | 显示全部楼层
谢谢大家啦,其实我默认为strStr这个思路就是第一问可以回答的。我本来还在想follow up是否有别的深意?或许是我想多了
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-4 04:01

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表