手撕的话应该是考察LCA吧,O(h)复杂度h树高。O(1)的话不管怎么样都要预处理吧,或者完全二叉树用数学确定这样算O(1)。 我这倒是有个很邪门的方法:我们假设这个地方存了我们所有的祖先节点用位图表示比如1234567这7个节点我们查询67的祖先。我6有这样的位图1010010,7有1010001。把这个存储位置的数相&,我们也公共祖先的位图也就是1010000,反转得到101也就是5,取log2,得到2,这个就是其最近的公共祖先的索引号(0,1,2)正好是我们存储的3号节点。

相关推荐

合适才能收到offe...:招聘上写这些态度傲慢的就别继续招呼了,你会发现hr和面试官挺神的,本来求职艰难就可能影响一些心态了,你去这种公司面试的话,整个心态会炸的。
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务