网申>机试>综合测评>专业面试(2轮)>业务主管面试>offer
2.机试(2h)硬件类:客观题+选择题(满分100,及格60)
实习、提前批(优招)机试通过了,秋招同一岗位可以不用机试
记住这3道题,面试(第一轮专业面)会复盘某一题。
机试成绩:100,200,300,按通过的测试用例百分比,加权计算
比如第一题通过80%,第二题通过20%,则总分为100*80%+200*20% = 120
提前批/秋招的难度比实习的大,相当于力扣的中等难度
刷题:牛客网、力扣
常见题型递归:LeetCode70、112、509
分治:LeetCode23、169、240
单调栈:LeetCode84、85、739、503
并查集:LeetCode547、200、684
滑动窗口:LeetCode209、3、1004、1208
前缀和:LeetCode724、560、437、1248
差分:LeetCode1094、121、122
拓扑排序:LeetCode210
字符串:LeetCode5、20、43、93
二分查找:LeetCode33、34
BFS:LeetCode127、139、130、529、815
DFS&回溯:LeetCode934、685、1102、531、533、113、332、337
动态规划:LeetCode213、123、62、63、361、1230
贪心算法:LeetCode55、435、621、452
字典树:LeetCode820、208、648
3.综合测评(2h)俗称性格测试,共36页,每题6个观点(最/较强/中等/弱...)
焦虑指数题:往积极方面选择,要保证前后的题选择基本一致
测评结果会影响秋招
4.面试实习:专业面(基础+项目),主管面;
秋招:专业面2轮,主管面
穿着合适的服装。现在大部分企业都不要求面试穿正装,但是也不能太休闲或学生气。
非研发要求正装。
4.1自我介绍1min和3min各准备一个,随机应变。
https://www.zhihu.com/question/19603341
我叫xxx,来自xxxx大学xxxxxxx专业,非常高兴参加咱们xx公司的面试,我想用3个关键词来介绍自己:第一个是xxxx,主要讲学历背景第二个是xxxx,主要讲项目经验最后一个是xxxx,主要讲个人技能及亮点我对xx很感兴趣, 同时咱们公司是这一行业的龙头企业,非常感谢有机会参加这次面试。 谢谢!
4.2手撕代码一般20min,对语言卡的不紧,只要编程思想,可以提出换语言解答
难度在力扣的中等难度
实在不知道怎么解答的话,思考后和面试官沟通讨论,尽量展现自己的思路题目:
leecode49、1019、763、949
最长公共子数组、最长回文字符串、朋友圈的个数—并查集、和为 x 的连续数组、最长公共子序列
4.3智力题https://zhuanlan.zhihu.com/p/279408335
https://blog.csdn.net/daaikuaichuan/article/details/90580284
4.4项目2个项目就足够,是面试最重要的环节
写在简历中的项目,要能回答出基本点(概述、自己负责的工作,最终结果)
准备一个最熟悉的项目,有一两个亮点(深入的技术点),具体介绍一下
4.5主管面可能会刷人,跟阿里的HR面有点像,一般不问技术(少数除外),主要问生活和个人经历
简单的自我介绍(1-2min)
4.6压力面主管面运气差的话会出现压力极大的情况。主要体现在主管及其严肃,气场很强,在你回答完之后部分地方直接进行驳斥。我的建议是保持自己的心态,压力面其实本身是个加分的机会。抗压能力在压力面中能够很好的体现。保持自己的思维逻辑,自信的面试状态很重要。
连续无法回答HR的问题,要坚持住,保持自信谨慎的状态
面对难题,说出自己的思路,不一定给出自己的答案,尽可能回答即可
4.7关乎职级职业规划、反问环节(问面试官)、面试中有自己的亮点
三场面试,每场都会评级(最高A,更优秀的有备注+)
职业规划总体方向:一直做技术专家,或者转技术类管理岗
技术专家型:第1年打基础,第2-3年熟悉业务,第3-5年带小组,之后熟悉整体架构、业务,成为专家。(带具体的时间节点)
转技术类管理型:软件开发>测试(35岁)>管理
反问环节最不推荐:部门业务是什么,因为部门业务其实可以查,直接问业务感觉有点对部门不了解的样子
可以问:进部门之后做什么工作
推荐问:自己前面回答得不好的问题,找相关技术点与HR交流
展现好学的一面:我进公司前需要提前学哪些知识,做什么技术准备
5.面试常见问题技术类计算机网络7层模型应用层:为应用程序提供服务
表示层:数据格式转换、数据加密
会话层:建立、管理、维护会话
传输层:建立、管理、维护端到端的连接
网络层:为数据包选择路由
数据链路层:传输有地址的帧、错误检测
物理层:以二进制数据形式在物理媒体上传输数据
三次握手建立连接
(1)客户端主动请求建立连接,发送SYN包(同步位SYN=1,序列号seq=x)到服务器端,并进入SYN-SENT状态,等待服务器确认;
(2)服务器端收到客户端发来的SYN包后必须对其进行确认,同时自己也发送SYN包请求连接,即发送ACK+SYN包(确认位ACK=1,同步位SYN=1,确认号ack=x+1,序列号seq=y)到客户端,此时服务器进入SYN-RECEIVED状态;
(3)客户端收到服务器端发来的ACK+SYN包后,向服务器发送确认包(确认位ACK=1,确认号ack=y+1,序列号seq=x+1),此包发送完毕,客户端和服务器端进入ESTABLISHED状态,三次握手完成。
TCP和UDP的区别UDP 在传送数据之前不需要先建⽴连接,远地主机在收到 UDP 报⽂后,不需要给出任何确认。虽然UDP 不提供可靠交付,但在某些情况下 UDP却是⼀种最有效的⼯作⽅式(⼀般⽤于即时通信),⽐如:QQ 语⾳、QQ 视频、直播等等。
TCP提供⾯向连接的服务。在传送数据之前必须先建⽴连接,数据传送结束后要释放连接。 TCP 不提供⼴播或多播服务。由于 TCP 要提供可靠的、⾯向连接的传输服务(TCP的可靠体现在TCP在传递数据之前,会有三次握⼿来建⽴连接,⽽且在数据传递时,有确认、窗⼝、重传、拥塞控制机制,在数据传完后,还会四次挥手断开连接⽤来节约系统资源),这难以避免增加了许多开销,如确认,流量控制,计时器以及连接管理等。这不仅使协议数据单元的⾸部增⼤很多,还要占⽤许多处理机资源。 TCP ⼀般⽤于⽂件传输、发送和接收邮件、远程登录等场景。
TCP流量控制如果发送方把数据发送得过快,接收方可能会来不及接收,这就会造成数据的丢失。所谓流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收。
利用滑动窗口机制可以很方便地在TCP连接上实现对发送方的流量控制。设A向B发送数据。在连接建立时,B告诉了A:“我的接收窗口是rwnd = 400”(这里的rwnd表示receiver window)。因此,发送方的发送窗口不能超过接收方给出的接收窗口的数值。请注意:TCP的窗口单位是字节
http://blog.chinaunix.net/uid-26548237-id-3966297.html
HTTP与HTTPS有什么区别HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全;
HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比HTTP协议安全。 SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密。
1、https协议需要到CA (Certificate Authority,证书颁发机构) 申请证书,一般免费证书较少,因而需要一定费用。
2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
通过URL地址显示主页的过程DNS解析:查找域名的IP地址TCP连接发送HTTP请求服务器处理请求并返回HTTP报⽂浏览器解析渲染页面连接结束C语言内存分类(1)栈(stack):由编译器自动分配释放,存放函数的参数值、局部变量的值、返回地址等,其操作方式类似于数据结构中的栈。
栈又称堆栈, 是用户存放程序临时创建的局部变量,也就是说我们函数括弧“{ }”中定义的变量(但不包括static