自我介绍
18年某一流学科本科毕业网工专业,进入odm行业干了一年安卓,裸辞考了个211硕士,技能点基本全为零,无java项目,基础只记得一些基础数据结构以及网络部分;
21年中开始刷力扣,用的是java,到实习前夕今年二月下旬已经刷了近800道,周赛基本两题左右,解出一题跟三题的概率呈正态分布在两题的两侧;
实习总结
首先,今年情况确实不太好,疫情的原因一些公司无法线上直接取消了实习招聘或者直接秋招(例如广联达,绿盟),也有一些公司缩减了hc(例如阿里,百度),加上20年研究生扩招(尤其是计算机跟医学)的背景下,找实习确实比往年难(例如去年我们学校很多人拿好多实习offer,今年普遍只有一两个);但是有实力的人永远不慌(当然不是我);我的情况是这样的:
没错,菜鸡就是一片红以及石沉大海;
首先解释下为什么只投到四月中,一是因为四月中之后能投的公司很少,二是因为心态炸裂,有公司就投,投了很多没听过的公司就没写上;
下面先写一下我记录+回忆的面经
实习面经
①微软的炸裂
一面:一个女面试官,讲话很温柔以及开了摄像头,给了一道最长无重复子串,基本上原题,但是是需要在她给的白板上写题不运行,我出现如下错误:1:语法错误,例如标点符号错误以及单词拼写错误,最后让我多次检查我没检查出来;2:时间空间复杂度未最优,我当时用map做记录已经遍历过的字母,后来面试官说用set更好(这点后来学jvm之后感觉有些不对,最多只是看起来会节省空间,其实并没有,set底层还是entry数组)
二面:一个男面试官,没开摄像头,感觉其实他挺想让我过的,就先跟我聊我之前工作的内容,显然跟他理解的我的工作内容南辕北辙,比如他想了解pos机刷卡用的那些技术,哪些协议,而我只做了设备的安卓原生代码相关的东西,不意外的聊不下去了,给我出了道剑指offer原题:
https://leetcode-cn.com/problems/search-a-2d-matrix-ii/
当时知道最优解法是按照对角线查找,但是脑子陷入惯性思维死磕正对角线怎么查找,后来时间到,人说了句谢谢你的时间,光速下机。
当晚收到感谢信!
②金证科技的中规中矩
金证科技效率很快,一周就安排了面试
面试问题(记录版)40min:
一:java集合种类
二:什么场景下用ArrayList,有哪些线程安全的集合,LinkedList怎么改双向?(这个问题当时我没太懂)
三:HashMap的扩容机制,红黑树,在map节点是链表的情况下发生put冲突会导致什么样的情况?
四:讲下ConcurrentHashMap;
五:讲下CAS是如何工作的?
六:线程池,为什么在阻塞队列满之后才开始使用最大线程,而不是一开始就使用?
七:讲下悲观锁与乐观锁
八:线程顺序打印有哪些方法实现?
九:(数据库)事务的隔离级别,课重复读