关注
class TreeNode: def __init__(self, x): self.val = x self.left = None self.right = None class Solution: def lowestCommonAncestor(self, root: 'TreeNode', p: 'TreeNode', q: 'TreeNode') -> 'TreeNode': if p.val >q.val: p,q =q,p while True: if root.val>q.val: root = root.left elif root.val < p.val: root = root.right else: return root def create(ceng,tree): ln = [] for i in range(ceng): for j,c in enumerate(tree): if j<pow(2,i)-1 or j>pow(2,i+1)-2:continue tmp = TreeNode(c) ln.append(tmp) if j >0: if (j-1)/2==int((j-1)/2):ln[int((j-1)/2)].left = tmp if (j-1)/2>int((j-1)/2):ln[int((j-1)/2)].right = tmp return ln ceng = 4#int(input().strip()) tree = [int(i) for i in '9 6 15 2 -1 12 25 -1 -1 -1 -1 -1 -1 20 37'.strip().split()] son1,son2 = 12,20#[int(i) for i in input().strip().split()] root = create(ceng,tree) s = Solution() p = TreeNode(son1) q = TreeNode(son2) print(s.lowestCommonAncestor(root[0],p,q).val)
查看原帖
点赞 3
相关推荐
查看6道真题和解析 点赞 评论 收藏
分享
01-29 19:56
西安电子科技大学 自然语言处理 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 交出你的校招焚诀 #
7254次浏览 131人参与
# 米哈游求职进展汇总 #
580009次浏览 2989人参与
# 神州信息求职进展汇总 #
2913次浏览 57人参与
# 实习生至暗时刻 #
13796次浏览 274人参与
# 哪些公司开暑期实习了? #
13125次浏览 114人参与
# 面试___岗的必刷题单 #
9061次浏览 158人参与
# 你经历过哪些AI幻觉? #
3928次浏览 97人参与
# 春招开局,你有保底offer吗? #
19289次浏览 179人参与
# 实习想申请秋招offer,能不能argue薪资 #
223272次浏览 1184人参与
# 三月的小目标 #
7158次浏览 132人参与
# AI面试问题分享 #
10126次浏览 203人参与
# 实习生的生存小技巧 #
5403次浏览 95人参与
# 找AI工作应该卷什么? #
2593次浏览 53人参与
# 字节开奖 #
129714次浏览 597人参与
# 我的第一份实习怎么找的 #
235571次浏览 1962人参与
# 小厂一定不能去吗? #
19928次浏览 153人参与
# 机械人春招想让哪家公司来捞你? #
387291次浏览 3160人参与
# 用一句话形容你的团队氛围 #
41289次浏览 287人参与
# 说说你知道的学历厂 #
384284次浏览 1362人参与
# 还记得你第一次面试吗? #
401820次浏览 4235人参与
# 浅聊一下我实习的辛苦费 #
275318次浏览 1794人参与