leetcode笔记——324周赛

  1. 第三题中设置字典:
    G = defaultdict(set)
    这样默认每个item是个set,可以直接用G[i].add(),不用G.get()再判断了
  2. 第三题中有个判断:
    return any(i != x and i!=y and x not in G[i] and y not in G[i] for i in range(1,n+1))表示这个any中任一个成立就会return True
  3. 这套周赛难点题第三题,主要在于分类讨论,思考到点的度为奇数的个数,通过题意中的“最多添加两条线”得到个数的上界
  4. 第四题难点一在于抽象出求最近公共祖先模型,难点二是如何求完全二叉树LCA,利用题中的条件是有一个很巧妙的解法

第三题2508. 添加边使所有节点度数都为偶数 - 力扣(LeetCode)

第四题:求最近公共祖先 - 查询树中环的长度 - 力扣(LeetCode)

这里把其他求解LCA的leetcode题目放上来,日后可能会有更新

236. 二叉树的最近公共祖先 - 力扣(LeetCode)

235. 二叉搜索树的最近公共祖先 - 力扣(LeetCode)

posted @ 2022-12-24 20:06  孙bob  阅读(18)  评论(0)    收藏  举报