4月17日学习日记

博主分享了在M1上配置csapp环境的困难经历,决定转向已配置好的cs144 lab。同时,记录了每日LeetCode刷题情况,提到目前在dp题目上的进步,并设定7月前刷满800题的目标。文章还提及了对一道重复数字问题的思考,探讨了哈希表的不同实现和原地哈希的概念。最后补充了一些Java知识,如HashMap的方法和字符串操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天是摆烂的一天,M1实在太难配置csapp的环境了,今天花了至少3个小时在这上面,可能是我智商不够,到最后都没有配置成功。

所以,有缘咱们再见吧,csapp。

明天开始,做cs144的lab吧,那个lab环境已经配好了,所以至少可以开始。

内心很想把M1的csapp环境给配好,但是面向秋招的话,时间实在不够用了,所以只能暂时放弃一下。

老样子,记录一下今天的leetcode刷题情况吧!

dp现在已经基本是看到简单题可以秒出状态方程,老样子,dp就是练,用脊柱写题。

我的目标:7月前刷满800道,平均一天10道题,也就是每天投入时间要达到5个小时。 话说,我每天7:30开始学习,晚上12:00入睡,一天满打满算,学习时间可以达到10个小时。

  • 7:30-11:30=>4h,
  • 13:00-17:30=>4.5h,
  • 19:00-21:00=>2h.
  • 22:30-24:00=>1.5h.

减去摆烂时间,一天如果可以达到时间的高效利用,可以达到10h满的学习时间。

今天的话:

  • 8:30-10:30=>leetcode 4题
  • 10:40-11:20=>csapp
  • 13:00-14:40=>leetcode 3题
  • 15:00-17:30=>csapp
  • 19:20-21:20=>csapp

今天leetcode刷的很平滑,没有遇到特别困难的题目,主要并没有挑战hard。

但是还是有一道题印象很深刻,剑指03(数组中重复的数字)

这道题目很容易就可以ac,但是优化的思路非常锻炼自己,分别是哈希表;原地哈希表。

哈希表又涉及到哈希表的多种构造方式:是数组呢,还是hashmap呢,还是hashset呢,每一种数据结构的优缺点分别是什么?

有时我们刷题,不仅仅是在刷题,要想一下,这道题,如果出现在面试中,还有可能会考察我们什么知识,那些说刷题不会提高基础的,就是纯刷题,认真刷题,好好感受每道题背后蕴含的全部知识,能做到真的非常不容易。

原地哈希,什么叫原地哈希,原地哈希的优点是什么?原地顾名思义就是不申请额外的空间。

长度为n个数组,所有的数均不相同,不妨我们就让num[i]去到索引为num[i]的位置。实际上,在本题的条件下,num[i]就应该去索引为num[i]的位置上。

补充一些java的知识。

刷题很常见的:

  • hashmap.keySet()方法返回映射中所有 key 组成的 Set 视图。
  • hashmap.getOrDefault() 方法获取指定 key 对应对 value,如果找不到 key ,则返回设置的默认值。
  • split() 方法根据匹配给定的正则表达式来拆分字符串。
  • string.trim() 方法用于删除字符串的头尾空白符。

JAVA取整和取余

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

troubles_killer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值