关注
贴一个第一题的解法吧:思路:求最近祖先,然后层次遍历,求路径长。下面是求路径,节点的话,再+1就行 class Node:
def __init__(self,val):
self.val = val
self.left = None
self.right = None
def countPath(node, a:int, b:int):
res = 0
stack = [node]
while len(stack) > 0:
tmp = []
while len(stack) > 0:
t = stack.pop()
if t == None:
continue
if t.val == a or t.val == b:
return res
tmp.append(t.left)
tmp.append(t.right)
stack = tmp
res += 1
return -float("inf")
def nodeDistances(root:None,a:int,b:int):
if root == None:
return None
if root.val == a or root.val == b:
return root
x = nodeDistances(root.left, a, b)
y = nodeDistances(root.right, a, b)
if x == None:
return y
elif y == None:
return x
else:
return root
if __name__ == "__main__":
root = nodeDistances(node, a, b)
if root.val == a or root.val == b:
print(max(countPath(root.left,a,b), countPath(root.right,a,b)) + 1)
else:
print(countPath(root.left,a,b) + countPath(root.right,a,b) + 2)
查看原帖
点赞 评论
相关推荐
2025-11-21 13:44
重庆科技大学 Java
程序员花海:实习太简单了 学历可以的 实习描述应该是先介绍业务 再介绍技术 技术咋推动业务的 做到了啥收益 有没有做实验 实验组和对照组有什么不同 你最后学到了什么 有没有参与处理过线上问题 有没有参与过公司的code review 有没有参与过技术分享 这些都是可以在实习描述中写的 并且实习和项目不一样不会撞车 应该放在最前面 放在教育背景下面 另外项目有点烂大街 可以看下我主页的简历优化案例 点赞 评论 收藏
分享
查看20道真题和解析 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 哪些公司在招寒假实习? #
9730次浏览 106人参与
# 你怎么看待AI面试 #
132857次浏览 739人参与
# MiniMax求职进展汇总 #
527次浏览 19人参与
# 26年哪些行业会变好/更差 #
15527次浏览 215人参与
# 找工作时的取与舍 #
114880次浏览 847人参与
# 去年的flag与今年的小目标 #
7660次浏览 172人参与
# 卷__卷不过你们,只能卷__了 #
8958次浏览 211人参与
# 腾讯音乐求职进展汇总 #
147336次浏览 1048人参与
# 写论文的崩溃时刻 #
4587次浏览 124人参与
# 有深度的简历长什么样? #
14064次浏览 296人参与
# 晒一晒你收到的礼盒 #
94963次浏览 460人参与
# 你不能接受的企业文化有哪些 #
9376次浏览 146人参与
# 求职你最看重什么? #
150658次浏览 875人参与
# 你觉得第一学历对求职有影响吗? #
219618次浏览 1226人参与
# 入职第一天 #
8466次浏览 186人参与
# 你都用AI做什么 #
5616次浏览 140人参与
# 机械人求职现状 #
31607次浏览 292人参与
# 工作丧失热情的瞬间 #
346661次浏览 2518人参与
# 一人分享一道面试手撕题 #
18764次浏览 701人参与
# 机械人的秋招小目标 #
25944次浏览 228人参与
# 现在前端的就业环境真的很差吗 #
490481次浏览 5931人参与
