news 2026/9/11 3:10:53

学习日记day50

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
学习日记day50

Day50_1215

专注时间:5H55min

每日任务:2h=复习数据库(完成情况及时长);1h=二刷2道力扣hot100(如果是hard,只做一道就好完成情况及时长:今日1道高频面试手撕题146.LRU缓存,做了2H46min);【学习资源:PyTorch官方文档:https://docs.pytorch.ac.cn/tutorials/beginner/basics/intro.html】1.5h=PyTorch工程实操(完成情况及时长:10+8+45把第二个pytorch网页的“局部禁用梯度计算”看懂,就去看第一个pytorch网页);1h=周志华机器学习(完成情况及时长:7);【按照Claude的路线】1h=手撕机器学习算法(完成情况及时长:??);计算机网络45分钟(完成情况及时长:??

学完机器学习,然后是深度学习、搜广推经典模型(也有很多要手撕的,见Claude生成的)。学完PyTorch,之后是Transformer与大模型架构(见Gemini3pro生成的阶段2)。学快一点,学完还要做搜广推的实战项目。准备一个GitHub Repo把所有手撕过的算法整理进去,这会是最好的复习资料。

必须熟记的API、最简洁的GPT实现、带注释的Transformer实现、推荐系统模型库(包含主流模型实现)还有“Let's build GPT”系列学习视频见Claude的第20页。

学习内容: 如上

总结与心得:专注时长很可以。周六周日懈怠+休息了。《146.LRU缓存》是高频手撕面试题。看了《模式识别与机器学习》历年试卷,感觉不去上课,不改学习方法会挂科啊【GitHub repo并且学习的ML等算法都要去做笔记手敲,这样才好复习,而且也才是真正学进去,不然又忘记了。】以后每次课都去,晚上下课后再去练,练完就不做有氧了。买个笔记本电脑充电宝吧。

《146.LRU缓存》

class DoublyLinkedNode(object): def __init__(self,key=0,value=0): self.prev = None self.next = None self.key = key self.value = value class LRUCache(object): #move2head deletenode deleltetail add2head #get(3)那么key:3对应的(key,value)就算被使用过了 def __init__(self, capacity): """ :type capacity: int """ #注意这里用了伪头节点和伪尾节点,所以有些函数的逻辑和双向链表不一样 self.cache = dict() self.size = 0 self.capacity = capacity self.head = DoublyLinkedNode() self.tail = DoublyLinkedNode() self.head.next = self.tail self.tail.prev = self.head def get(self, key): """ :type key: int :rtype: int """ if key not in self.cache: return -1 node = self.cache[key] self.move2head(node) return node.value def put(self, key, value): """ :type key: int :type value: int :rtype: None """ if key in self.cache: node = self.cache[key] node.value = value self.move2head(node) else: node = DoublyLinkedNode(key,value) self.cache[key] = node self.add2head(node) self.size += 1 if self.size > self.capacity: denode = self.removetail() self.size -= 1 #dict.pop(key)删除键值对 self.cache.pop(denode.key) def delete(self,node): node.next.prev = node.prev node.prev.next = node.next def move2head(self,node): self.delete(node) self.add2head(node) def add2head(self,node): #伪头节点 node.next = self.head.next node.prev = self.head self.head.next.prev = node self.head.next = node def removetail(self): #伪尾节点 #return:DLinkedNode 被移除的节点(用于删除哈希表中的对应项) node = self.tail.prev self.delete(node) return node # Your LRUCache object will be instantiated and called as such: # obj = LRUCache(capacity) # param_1 = obj.get(key) # obj.put(key,value)
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/8 17:56:08

连续数组(哈希+前缀和)

这道题可以利用 前缀和 哈希表 来解决。1. 将 0 视为 -1题目要求找“0 和 1 数目相等”的最长子数组。 如果把数组中的 0 当作 -1,那就等价于:找到一个子数组,使得这个子数组的元素和为 0。2. 使用哈希表记录前缀和第一次出现的位置设 prefi…

作者头像 李华
网站建设 2026/9/10 15:01:24

Linux平台设备驱动

Linux内核使用总线来处理设备,总线连接了CPU与这些设备。有些总线足够智能,并内嵌了可发现性逻辑以枚举连接到总线上的设备。在引导阶段的初期,Linux内核会请求这些总线提供它们所枚举的设备以及这些设备正常工作所需的资源(如中断…

作者头像 李华
网站建设 2026/9/11 17:23:13

初探 Mysql Docker

前言我在專案開發階段常使用 MySQL Docker,主要是好處,快速啟動、零安裝成本、版本切換,不污染本機系統(不喜歡本機裝一堆有的沒的,特別是有的只會用那麼一次)。而且如果在需要,任何時間、任何機器,都能還原…

作者头像 李华
网站建设 2026/9/10 14:54:20

大数据传输时代:如何选择高效可靠的数据传输工具?

在数据驱动决策的今天,大数据已成为企业核心资产。然而,随着数据量呈几何级数增长,海量数据的快速、安全、稳定迁移与同步,正成为众多企业数字化转型道路上的严峻挑战。传统的传输方式在TB甚至PB级的数据洪流面前,如同…

作者头像 李华
网站建设 2026/9/10 16:36:07

企业网盘私有化部署,构建安全高效的数据资产管理基石

在数字化转型浪潮中,企业数据资产的价值与日俱增,如何安全、高效地存储、管理与协作这些核心资产,成为每个组织必须面对的关键议题。近年来,越来越多的企业将目光投向网盘系统的私有化部署,这一模式正逐渐成为保障数据…

作者头像 李华
网站建设 2026/9/9 6:06:45

39、深入探究 Linux 中的睡眠与计时机制

深入探究 Linux 中的睡眠与计时机制 在 Linux 系统编程中,睡眠和计时是常见的操作,它们在很多场景下都发挥着重要作用。本文将详细介绍 Linux 中不同的睡眠和计时接口,包括它们的特点、使用方法以及适用场景。 1. 纳秒级睡眠:nanosleep() Linux 中, usleep() 函数已被…

作者头像 李华