首页 > 春招面经20届校招(C++/后端/软开/服务端)
头像
雨巷△
编辑于 2020-04-13 18:14
+ 关注

春招面经20届校招(C++/后端/软开/服务端)

背景:双非二本纯C语言,其他语言基本不会,秋招基本一面挂,春招面经,如果我没有往下写,说明我挂了。顺序不分先后,有些问题可能忘了,没有记录上。

秋招

绿盟:

1,二叉树的遍历,递归非递归

2,了解哪些网络攻击方式,附加问题:dos和ddos区别

3,怎么看待加班

4,介意出差吗

网易:

1,vector扩容机制

2,Nginx,redis相关问题

3,C++右值

4,编程题:最大连续子数组

5,MySQL数据库索引用的什么数据结构,为什么用B+数树不用别的

6,Shell命令,单[和双[[区别

7,poll,epoll,select区别

8,Map是有序的吗

字节跳动:

1,堆栈区别

2,下面出现有什么问题,怎么改进

void a(int * p)

{

Int i=2;

P=&i;

}

Int main()

{

Int *p=NULL;

a(p);

cout<<*p;

return 0;

}

3,数据库四种隔离级别,索引概念,出了一个索引题目,怎么建立索引

4,Linux命令,复制文件夹,查询某个文件的一些内容,比如统计a文件中xxx的数量

5,网络,tcp三次握手四次挥手,TIME_WAIT的2msl,以及tcp为什么可靠

6,编程题,最长不重复子串,超过两个不算重复

7,指针引用区别

8,new和malloc区别

春招

Thoughtworks:(挂)

当时提交简历,然后做完智商情商检测题吧,就收到了面试邀请。thoughtworks的面试先是给一个小作业,大概在面试前一天发给你,提交自己的想法和解法,不难,仔细想想能够解出来。大概两个小时左右吧,在一个类似于牛客的网站,把想法提交就好了。


作业面:

作业是关于一道无人机路径存储的问题,由于保密就不能细讲了。这个面试,根据你之前提交的内容,面试官会跟你讨论你的方案是否可行,然后还有建立相应的数据结构,就不是简单的嘴上说说,让人感觉到就算让你实际写代码,也能写出来的那种。虽然没有写代码。


终面:(两个人一起面)

①项目难点(还说了我的技术栈窄,因为我只会C)

②对公司了解程度

③为什么选择我们公司

吐槽:这个面试全程没有基础知识问答,thoughtworks好像以java和Python为主吧

深信服:(挂)

一面:

1,给你一个装有年龄的数组,找到第K大的年龄,数组中可能有重复年龄。异常输入可能是一共才10个人,要找到第100大的年龄的人

2,C++有什么缺点

3,父进程如何回收子进程

4,内存泄漏有什么办法解决

5,当前的网络体系为什么是这样的,为什么要分为7层结构5层结构


二面:

1,项目,收获

2,怎么学的(这里没答好,我说我看视频学的,应该答看书看博客看源码之类的)

3,C++最重要的是什么

4,爬楼梯

5,给了一个很大的文件,里面全是网站的url,求统计访问前十的url

6,手撕删除链表节点。(这里虽然题目做出来了,但是效率不是最高的,面完之后才想起来解法)

TCL:(挂)

一面:

1,项目

2,会不会网络编程

3,多态

4,C++11特性


HR面:

1,项目

2,最有成就感的事

3,什么时候能来(我说7月,这里应该说两周内就好了)

4,参加的社团活动


虾皮:(挂)

他们公司好像偏向于Python和go,少量java,没有C。

一面:

1,进程在Linux下的内存的分块,各分块的作用

2,进程和线程的区别

3,进程的生命周期的状态,各个状态怎么切换的

4,进程的通信方式,各个通信方式有什么优点

5,Tcp/ip协议簇各层的作用

6,我们视频面试可能用到什么协议

7,HTTP分包

8,HTTP报文有什么

9,HTTP状态码

10,HTTP的session的了解

11,MySQL的聚簇索引和非聚簇索引

12,MySQL的索引用了什么数据结构

13,为什么索引用了B+树

14,给个SQL语句说出它的执行顺序

{

Select sex,count(name) from test_tab where age>20 group by sex;

}

15,LRU的实现,说说想法

16,一个很大的文件,有一千万个单词,文件每一行有一个单词,说出如何找出前topk个单词

17,稳定的排序算法有哪些


二面:

1,二分查找的复杂度

2,C++继承和组合

3,广度优先和深度优先

4,堆排序和快排时间复杂度

5,三次握手

6,C++多态

7,项目

8,项目的安全性

广州速游:(挂)

广州速游是先HR面,再技术面。

HR面:

1,主要语言是什么

2,是否接受大小周

3,期望薪资(我说至少8k)

4,是否接受转语言erlang,有专门导师培训

5,你对于服务器开发方面有什么优势,对服务器开发的了解(这个问题把我问懵了,当时随便答了一下)

6,春招秋招拿的offer

WPS:(offer)

一面:

1,new和malloc区别

2,0~10亿元素插入(位图)

3,vector和list区别

4,RGB颜色存在一个文件中,取出出现频率前十数量的RGB颜色

5,map和hashmap的区别

6,Class A{

Public:

A(){}

void init(){}

~A(){}

};

Class B:public A{

B(){}

void init(){}

~B(){}

};

A *a=new B;

几个小问题:

①、B构造的执行顺序是什么样子的

②、在B的构造里调用init函数是调用谁的

③、如果A的init函数声明为virtual,在B的构造里调用init函数是调用谁的

④、a如果调用init是调用谁的

⑤、如果A的init函数声明为virtual,a如果调用init是调用谁的

7、void function()

{

Begin();

//***

//在functio中间可能调用return或者抛出异常打断function函数

//***

End();

}

现在有一个需求,我如果调用begin函数,就必须调用end(),如果做才能不被打断,保证end函数一定能执行。面试官给出的建议是在栈上定义自定义类型的变量,在析构函数中调用End函数,保证End函数100%执行


二面:

1,虚函数怎么调用的

2,子类想在构造函数中调用自己的虚函数,怎么办

3,指针和引用

4,结构体定义一个引用,结构体大小

5,结构体和类的区别

6,List和vector

7,Map和hashmap

8,项目难点

9,寻找树的深度

10,反转链表

11,优先队列怎么实现,除了使用堆

12,一个大的二维表格,类似于一个二维数组,但是数据结构不一定使用数组

主要的操作:①给你行和列,也就是位置,以及数据,我往二维的表格中存储数据如字符串

②给你行和列,也就是位置,我从二维的表格中读取数据

内存限制:①由于内存空间有限,你不能把二维表格的每一个变量都初始化,比如行和列的长度都是long long的极限长度

②用户的存入表格的所有的数据,内存恰好能够装下,注意恰好两个字。当然,函数的一些操作之类的,内存也能装下

要求:①我给你行和列,我能够正常读取和存入

②我想遍历某个范围的数据,比如(1,1)到(100,100)

③我想按照列遍历某个范围的数据

④我想按照行遍历某个范围的数据

⑤我想遍历一块矩形的区域的数据,当然,我把矩形的位置大小都给你,你返回结果集

⑥假设我只访问我存过的数据,没有存过的数据我不访问

问题:设计一种数据结构,满足上述要求


HR面:

1,项目

2,期望工作地点

3,期望薪资

4,前面有什么面的不好的地方

5,了解WPS主要开发什么吗

6,手里的offer情况

奇安信:(offer)

一面:

1,项目。

2,互斥量和条件变量

3,多态。

4,如果基类的析构函数不是虚函数,怎么办

5,C++调用c的函数怎么做

6,Hash表

7,Linux中过滤掉文本的命令

8,Linux下的IO复用模型

9,多线程多进程

10,怎么学的

11,僵尸进程

12,父进程注册了wait,回收了子进程,但还是出现僵尸进程

13,段错误及其调试,Core文件大小怎么调


二面:

1,五层网络模型

2,我是服务端你是客户端,我给你发了一段数据,我的seq是100,你应该回我ack多少(假设已经建立了三次握手,现在给你发了一段数据)

3,Redis分布式锁

4,Redis进程模型

5,HTTP协议

6,手撕代码,洗牌算法:

输入:一个int数组,存放了1~54共54个数字
输出:将这个数组随机打乱后返回

7,你写一段helloworld出现,如何从代码变为程序最后再打印到屏幕上的?(操作系统调用了一次IO,打印IO,操作系统触发一次IO中断,中断告诉外设去某些地方拿字符串,把它打印到屏幕上,让具体的外设拿到这个东西)

8,进程用什么命令看

9,Socket编程主要大的步骤

10,accept拿到了客户端的套接字,read的时候报错,是什么原因导致的呢?时不时报错。(tcpdump把输出写到文件,再拿到Windows上去分析,直接上tcpdump分析,能看出是网络问题还是服务问题还是客户端问题,如果是我服务的问题,通常情况下,服务端会发生一些ret或者fin的包,或者数据还没传输完就发送fin的包,如果是客户端的问题也会发ret或者fin的包,或者客户端很长时间没有发起连接,没有seq也没有ack,这个时候服务端也会主动发起fin或者ret,分析这个fin或者ret的顺序就能看出来)


HR面:

1,项目怎么做的

2,实习经历

3,怎么学的

4,最有成就感的事情和最有挫败感的事情

5,想做技术专家,还是管理者,还是产品,为什么

更多模拟面试

全部评论

(6) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

热门推荐