学习日记day53

Day53_0110

专注时间:3h08min

每日任务: 饭后的休息(25min),学习间歇的休息(15min)都用手表计时器来监督

40min =二刷 1 道力扣hot100(如果是hard,只做一道就好 完成情况及时长: 40 );【学习资源:PyTorch官方文档:https://docs.pytorch.ac.cn/tutorials/beginner/basics/intro.html】1.5h=PyTorch工程实操(完成情况及时长: 0把第二个pytorch网页的"局部禁用梯度计算"看懂,就去看第一个pytorch网页 );1h=周志华机器学习(完成情况及时长: ?1h25min ); 1.5h+(claude的RL4LLM学习路径,时长: 40+10 )

学完机器学习,然后是深度学习。学完PyTorch,之后是Transformer与大模型架构(见Gemini3pro生成的阶段2)。学快一点。准备一个GitHub Repo把所有手撕过的算法整理进去,这会是最好的复习资料。

必须熟记的API、最简洁的GPT实现、带注释的Transformer实现、推荐系统模型库(包含主流模型实现)还有"Let's build GPT"系列学习视频见Claude的第20页。 冰哥听讲座,老师说: GPT是最好的老师,不需要其他家教,清华学生智商120,GPT有140。多用大模型来帮助学习。

学习内容: 断更了很多天,有些天是休息偷懒的,有些是在学习的,无论如何再次记录下来,坚持吧。换学习方向了。

总结与心得:昨天专注时长:7小时08分,主要是因为去教学楼学习了,还完成了最优化大作业,很好。玩抖音浪费了3个小时,改一改,主要是当时没有关闭网页放下耳机的决心,不太好。饭后的休息(25min),学习间歇的休息(15min)都用手表计时器来监督

《验证二叉搜索树》

递归以及中序遍历的迭代写法仍然是跨不过的高山,不过,继续加油就好了。

python 复制代码
# Definition for a binary tree node.
# class TreeNode(object):
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution(object):
    def isValidBST(self, root):
        """
        :type root: Optional[TreeNode]
        :rtype: bool
        """
        #中序遍历得到的数组是严格单调增的。
        #递归、迭代
        self.res = []
        def dfs(root):
            if not root:
                return 
            dfs(root.left)
            self.res.append(root.val)
            dfs(root.right)
        dfs(root)
        for i in range(len(self.res)-1):
            if self.res[i]>=self.res[i+1]:
                return False
        return True
        
python 复制代码
# Definition for a binary tree node.
# class TreeNode(object):
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution(object):
    def isValidBST(self, root):
        """
        :type root: Optional[TreeNode]
        :rtype: bool
        """
        #迭代
        stk = []
        res = []
        cur = root
        #条件是 或 不是并且
        while stk or cur:
            #这个迭代法还是太难想了
            if cur:
                stk.append(cur)
                cur = cur.left
            else:
                cur = stk.pop()
                res.append(cur.val)
                cur = cur.right
        for i in range(len(res)-1):
            if res[i]>=res[i+1]:
                return False
        return True

        
python 复制代码
# Definition for a binary tree node.
# class TreeNode(object):
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution(object):
    def isValidBST(self, root):
        """
        :type root: Optional[TreeNode]
        :rtype: bool
        """
        #利用递归,边递归边判断 arr[i]>=arr[i+1]
        #只需要两个值。还是没思路
        #如果该二叉树的左子树不为空,则左子树上所有节点的值均小于它的根节点的值; 
        #若它的右子树不空,则右子树上所有节点的值均大于它的根节点的值;它的左右子树也为二叉搜索树。
        #这启示我们设计一个递归函数 helper(root, lower, upper) 来递归判断,函数表示考虑以 root 为根的子树,判断子树中所有节点的值是否都在 (l,r) 的范围内(注意是开区间)。
        #如果 root 节点的值 val 不在 (l,r) 的范围内说明不满足条件直接返回,否则我们要继续递归调用检查它的左右子树是否满足,如果都满足才说明这是一棵二叉搜索树。
        def helper(root,lower=float('-inf'),upper=float('inf')):
            if not root:
                return True
            val = root.val
            #一定要先判断根节点是否满足条件
            if val<=lower or val>=upper:
                return False
            if not helper(root.left,lower,val):
                return False
            if not helper(root.right,val,upper):
                return False
            return True
        return helper(root)
        
相关推荐
世人万千丶7 小时前
参数管理_Flutter在鸿蒙平台路由参数最佳实践
学习·flutter·华为·harmonyos·鸿蒙
遇乐的果园10 小时前
前端学习笔记-vue加载渲染优化
前端·笔记·学习
遇乐的果园11 小时前
前端学习笔记-vue状态管理优化
前端·笔记·学习
从零开始的代码生活_11 小时前
C++ 继承详解:访问控制、对象模型、菱形继承与设计取舍
开发语言·c++·后端·学习·算法
可乐奶茶sky12 小时前
AI Agent 学习
人工智能·学习
茯苓gao12 小时前
嵌入式开发笔记:EtherCAT协议从硬件到软件完整配置指南——从零搭建一套EtherCAT通信系统
笔记·嵌入式硬件·学习
RD_daoyi14 小时前
外链权重暴跌至13%,品牌提及反超传统链接——2026年不做Digital PR,你的独立站等于隐形
运维·网络·学习·机器学习·搜索引擎
chase。14 小时前
【学习笔记】PointWorld:迈向通用机器人操控的3D世界模型
笔记·学习·机器人
AOwhisky15 小时前
Python 学习笔记(第十三期)——运维自动化(下·前篇):远程命令执行——paramiko基础篇
运维·python·学习·云原生·自动化·运维开发·paramiko
前端世界15 小时前
MySQL 基础入门(学习第4天)——约束与 DML 操作详解
数据库·学习·mysql