news 2026/7/26 11:06:51

学习日记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/7/24 0:30:13

东莞有专业“图生视频”企业?背后奥秘待揭秘

在东莞的内容创作领域,传统视频制作面临成本高、耗时长等困境。某行业实践验证,传统创作成本比新兴方式高出百倍以上。本文将深入剖析“图生视频”背后的奥秘。现状与挑战传统视频创作成本高昂,每月花费在数千元到数万元不等,且耗…

作者头像 李华
网站建设 2026/7/25 2:32:29

iOS 应用发布流程中常被忽视的关键环节

在很多项目里,“发布 iOS 应用”经常被视为开发结束后的自然延伸。但当你真正负责一次完整发布时,很快会意识到,这并不是一个单点操作,而是一段横跨多个工具、多个系统、多个角色的工程过程。 我第一次完整跑完 iOS 发布全流程时&…

作者头像 李华
网站建设 2026/7/24 15:05:22

什么是云桌面?一般都用哪些云桌面?

随着数字化时代的快速发展,云计算技术逐渐渗透到各行各业,其中云桌面作为一种创新的工作与学习方式,正受到广泛关注。它不仅提升了资源利用效率,还增强了数据安全性和访问灵活性。特别是在教育领域,结合人工智能技术的…

作者头像 李华