【刷题DAY20】530, 501, 236.md

0x00 530.二叉搜索树的最小绝对差

题目链接:https://leetcode.cn/problems/minimum-absolute-difference-in-bst/

0x1 看到题目的第一想法

  • 用了额外空间存储中序遍历后的二叉搜索树,然后寻找最小绝对差值

0x2 自己实现过程中遇到哪些困难

0x3 今日学习的文章链接,或者视频链接

0x4 看完代码随想录之后的想法

  • 直接在二叉树里用pre,cur指针进行求差

0x5 今日收获,记录一下自己的学习时长

  • 30min

501. 二叉搜索树中的众数

题目链接:https://leetcode.cn/problems/find-mode-in-binary-search-tree/

0x1 看到题目的第一想法

  • 用了额外空间存储中序遍历后的二叉树,然后求各个元素出现的频率,找到最大频率那些数字

0x2 自己实现过程中遇到哪些困难

  • 忘了怎么求频率了
    1
    2
    3
    4
    5
    6
    7
    8
    9
    maxFre = -float('inf')
    for val, freq in count.items():
    if freq > maxFre:
    # 清空
    maxFre = freq
    res = [val]
    elif freq == maxFre:
    res.append(val)
    return res

0x3 今日学习的文章链接,或者视频链接

0x4 看完代码随想录之后的想法

  • 好麻烦这个解法

0x5 今日收获,记录一下自己的学习时长

  • 45min

236. 二叉树的最近公共祖先

题目链接:https://leetcode.cn/problems/lowest-common-ancestor-of-a-binary-tree/

0x1 看到题目的第一想法

0x2 自己实现过程中遇到哪些困难

0x3 今日学习的文章链接,或者视频链接

0x4 看完代码随想录之后的想法

  • 判断一个节点是节点q和节点p的公共祖先
    • 如果找到一个节点,发现左子树出现结点p,右子树出现节点q,或者 左子树出现结点q,右子树出现节点p,那么该节点就是节点p和q的最近公共祖先

0x5 今日收获,记录一下自己的学习时长

  • 1h

待重点复习

236

总结

  • 判断一个节点是节点q和节点p的公共祖先