请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

感觉这个算法有问题

实际上这个应该考的点是求交集,但是老师这里的算法应该是有问题的。

比如视图层级是这样的

A-B-C-D

A-B-E

老师这样比较就会是这样的,拿到他们的父视图数量所以最少比较2次

第一次C-B

第二次B-A

当然都不对啊


正在回答

1回答

能写这些内容来求解,说明你很认真,专注值得鼓励!不过需要注意看视频讲解和工程算法的源码。
再此,给你再梳理一遍
比方说:求E和C的共同父视图 第一,先各自遍历两个视图的全部子视图,存储到数组当中 List1 : [E,D,B,A] List2: [C,B,A] 第二, 以倒叙方式循环遍历,循环次数MIN(list1.count, list2.count)当遍历到D和C比较的时候发现不一样 break遍历过程 算法整体时间复杂度O(n)

1 回复 有任何疑惑可以回复我~
  • 于海 #1
    抱歉,打错字了  「全部子视图」更替为「全部父视图」
    回复 有任何疑惑可以回复我~ 2018-07-27 12:25:22
  • 提问者 慕尼黑7794356 #2
    非常感谢!
    回复 有任何疑惑可以回复我~ 2018-07-27 13:48:21
  • 还是没有看懂老师举的例子按老师的说法肯定没问题  但是提问者比如视图层级是这样的
    
    A-B-C-D
    
    A-B-E
    
    这个例子按老师的算法确实不对啊
    回复 有任何疑惑可以回复我~ 2018-09-10 17:13:34
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信