2025_12_4
206反转链表
java
class Solution {
public ListNode reverseList(ListNode head) {
if(head==null||head.next==null){
return head;
}
ListNode sum= reverseList(head.next);
head.next.next=head;
head.next=null;
return sum;
}
}
这个是递归,空间O(n),这种返回值的写法可以把返回值传递下去了解一下用法,这个是改变下一个的指针和消除自己的一个
java
class Solution {
public ListNode reverseList(ListNode head) {
ListNode a=head,b=null;
while(a!=null){
ListNode temp=a.next;
a.next=b;
b=a;
a=temp;
}
return b;
}
}
这个是双指针,空间O(1),写起来也更优雅,这个的调转是调转当前指针的next调转的也比之前的清晰
总结:
我这个人很喜欢制定计划虽然能不能按时完成就不一定了,来说下我近期在干的事情吧。
这周周六有一节结课的在复习考试,其余的时间拿出来做mysql知识的串联了(这里我会感觉我有点慢了),因为知识是网状的,这种串在一起的复习是很有必要的,我又看了些牛客的文章,有一些认知在改变。
首先对于小厂吧就是招你进去干活之类的,而大厂那种更多的是看你有没有培养的能力,因为现在虽然看上去学了很多但对于正式工作可能又很少,很片面。
然后说一下简历方面的事,现状是后端像流水线一样,很多人做的事情都一样,简历都一样。而如果没有特点就很难突出出去。所以需要在简历不一样的或者思维上不一样的来突出,简历的话可以通过写有质量的博客来让别人看到你对技术的热情,或者参与过开源项目,或者有icpc金牌之类的。对项目深挖,项目都差多就看自己深挖扩展的能力了。而这些也都只能说算包装,真正重要的还是自己的内功(当然也不是八股就很难描绘出来的感觉)
总之我接下来的任务呢,我是这么安排的:
时间上:
拿出更多时间来学,我认识的佬能做到一天8个小时,10个小时的。
加大注意力,少做使自己分心的事情,可以通过锁机在学习的时候专注我老是喜欢拿起手机水水群这是坏习惯。
简历方面:
博客前期就是养成写作习惯的,所以暂时不要考虑写在简历上了。
这里就是就是对项目的深挖,对实习的包装。(可以突出详细技术来方便面试官问八股)深挖方面,可以对着市面上现有的完整项目来扩展功能。
然后现在来看前端客户端前景也很好,所以也做一个考虑。(实习也只是能让简历看着好看点罢了,或者是一个证明,真正有用的都是内功)
习惯上:
对各种东西留档,可以通过记笔记的方式。
然后多做一劳永逸的事情,少重复来浪费时间,可以自己给自己写文档。
算法:
sql也要刷的哈哈,力扣老样子。
others:
我还要继续去消化我认为有用的东西,也要留出时间来针对这方面,还有多总结知识的网络。
不要被其他人过度影响,可以用其他人速度来警戒自己,但是不要打击到自己,也不要过于自卑要相信自己。(回答不上问题也不一定是自己的问题,面试你的人也只是牛马(也可能出现实力不足问出没营养的问题,但是大多数可能是mt/+2之类的能力强的,所以也不要想着忽悠),也不要当成自己被拷打这是一个相互让对方了解自己的过程,可以当成技术的交流对话,能力够的话彼此探讨技术方案)
也要拿出时间来联系表达能力这很重要。(要经常假设别人在这方面问问题)
不要自我感动我学了XXX就会怎么样。
然偶不要作为一个学生的角度,要作为一个开发者的角度。
遇到各种东西要多去了解思考,不要想着现在没用就不考虑。
总之我还要再沉淀一段时间,1月开投吧。
省流:项目拓展,知识点的总结,表达能力的练习,已有的东西的消化。(补充弱点地方的八股,juc,jvm,看看计网,源码也要真的看一遍)
https://www.nowcoder.com/issue/tutorial?zhuanlanId=jbEYdp\&uuid=3de0b5c644fc41abbc2919f054605f24
(边界可以参考这个标准,但是正如文中所言这不是考试没有所谓的固定标准)