C++面试题刷题9-26

久没写面经了,好好整理一波回馈牛友,希望对大家有帮助,后续还有面经会再补充到这篇里

只写了和以前面经不重复的,像进程间通信方式这类每次必问的就不写了。

以下面经按时间顺序排序

诺瓦科技两面:
一面
手写string,以前没写过,各种细节错误,但都改对了。

封装一个字符串类,这是C++的常见题目
C语言和C++区别
面向对象讲讲,队列的场景,感觉都很假大空还老说我答不到点上,但也不知道那个点到底是什么。
socket读取的场景题,问如何保证不读错,我说规定长度,根据长度来读取。否定了我,然后又说设计转义字符,还说不对,提示我TCP粘包怎么解决,我想这粘包不就是这么弄吗?
然后是怼项目,贬的一文不值,感觉不招人,但也用不着这样吧。
二面时候面试官聊的很开心,把我送出门,然后刚回学校看状态-面试淘汰。

贝壳三面:2小时
1.先写了个青蛙跳台阶


2.画TCP三次握手四次挥手的图,对应什么系统调用,每个请求的序号是什么意思。


3.CPU调度进程方式


4.死锁及避免


5.页面置换算法有哪些


6.哈夫曼树原理及作用


7.操作系统的局部性原理


8.时间片轮转原理(时钟中断)




作业帮两面:2小时
基本都是以前问过的(面大华问的太全了,基本都囊括了)
1.一个函数在内存中的执行过程(涉及寄存器)
2.给n个学生按身高排序,最多只能交换n次。当时第一反应是选择排序,但是排序好久没看了给忘了,只好另辟蹊径选择桶排序,但是不知道怎么有bug,事后自己写就没bug了······面试官说为什么不用冒泡排序,我说交换次数超出n,不是太懂。事后狂补排序。
3.统计二进制中1的个数,这题做过几遍了,但那天不知道是没睡好还是怎么就是想不出来,而且还用了位运算,应该直接除2或者n&(n-1),因为位运算的话负数会陷入死循环。
总之,作业帮基础答得都很好,就是两个送分题没做出来导致没进hr,非常的恼火?。感觉面试时一定要把思维放开,不能畏手畏脚,我当时就是有点太担心细节错误被面试官怼,思维被限制住了。

网易互娱一面:60min
1.虚函数场景题
2.父类构造函数和析构函数能调用虚函数吗
3.手写vector,着重实现push_back()

vector扩容过程
4.吃鸡缩圈的限制条件,其实就是求一个圆的范围。
5.手写无序数组连续三数之和的最大值,复杂度On

前缀和。


待二面。

浦发银行
上机三道都做出了,但是编译器有问题,就算只cout都会报错,说是会人工阅卷,随缘吧。
项目没问,就问了C与C++区别,数组和链表区别,然后是一些个人背景和习惯,10分钟。
面试官们态度非常好,静待结果。已体检
 

美团

一面:90min

面试官是搞java的,但是对C++问的也挺深,确实蛮厉害。

1.C++和java,C语言的区别

2.new,delete,malloc,free能否混用。
3.一个函数模板生成的两个模板函数内存空间是否独立?这俩之间有啥关系
4.事务的ACID,四种隔离级别以及解决的问题

5.设计一个可扩展表的数据库,用什么方式,提示我用一个树,并且问了树的父节点表示法

6.讲讲设计模式,着重观察者模式,观察者模式是多线程还是单线程的(单)

7.撕一个反转int数字,比如123转为321,先用库函数写了一个,又写了一个没用库函数的,前导零是可以自动忽略的。
8.撕一个反转链表,自写测试用例给面试官看。

二面:60min

二面我是真对不住面试官,不过美团的面试官人真是不错,治愈了我早上被cvte伤害的心。

我以为面试链接发的163邮箱,一直没找找,以为是电话面,没想到在qq邮箱里躺着,鸽了面试官5分钟。中间还掉了三次线,真是太难了。

1.int的范围,数据库最小单位。

2.一个vector<string>,判断两个指定单词之间的最小距离(因为可以重复)。

3.第一个只出现一次的字符,剑指原题。

希望能有三面,不过就算没有也是自己zuo的。


华为三面:
一面:55min
1.复盘半年前笔试题第一二道。
2.一堵墙,每层有砖头,砖头长度和数量不定,砖头之间有缝隙,墙体以不定长二维数组形式给出。写一个穿过最少砖头的题(也就是穿过最多缝隙),图片题,不太好描述,不难。
3.一些网络操作系统老问题,稍微往深问了点
4.CPU的内部组成及关系
二面:60min
面试官小哥哥说是校友,聊了会学校近况后说,今天我还没给人出算法题,就从你开始把,先来个简单的。
1.然后给了个力扣516最长回文子序列?,本来准备用暴力法或者用回溯法,但是小哥哥说用dp做把;
于是在力扣第5题最长回文字串的基础上用dp做了,差点栽到这道题?
2.VLAN作用,VLAN帧格式字段
3.IP分片的场景题,http是否要考虑分片
4.局域网访问公网方式,为什么要这样及原理。
5.公网返回给局域网内主机如何定位。
6.三次握手client第一次syn和第二次ack包的序号关系
7.ARP协议讲一下,讲到ARP表中没有的话需要广播并由目的主机返回一个包含自己mac地址信息的包时,问这个单播采用什么协议,当时没太搞懂,觉得还是arp啊。后来告诉说是arp-reply。可能是给我下套想让我说rarp,但我没上当。
8.进程间通信用过哪些,不让背概念,讲讲具体使用方法及代码怎么写,含义。
9.vim获取某一字段出现次数

10.一些基本LINUX命令,Linux下编译C++方式,g++,makefile.
11.LVS负载均衡算法
12.iptables了解吗
13.聊了聊项目,给了些学习建议
主管面:50min
讲项目,项目如何改进。画项目架构图,讲性能指标。讲论文,讲上课内容(类似简历验证面)提了些建议,问了些问题。
回去发现性格测试挂了,tnext=1,随缘。

搜狗三面:
一面:60min
1.笔试题复盘
2.手写string,我又出bug了

3.手写二叉树按行输出

4.LRU读写如何实现线程安全,加锁。如何提升加锁性能。

5.map大小
6.100大小unoderedmap和10000大小的查找一个数谁快,cacheline,不太懂。

二面:90min
1.红黑树和AVL区别
2.为什么要四次挥手,如果不需要close_wait状态的话还需要四次挥手吗
3.const用法,为什么拷贝构造函数要传引用。
4.海量字符串排序。我想着hash分桶也只能内部排好,字符串也不好用bitmap排序,于是说遍历,根据a-z开头进行桶排序,a的放到一个桶,b的放到一个桶,然后对每个桶内部再执行这个过程。
5.实现关键字推荐,比如在搜索栏输入ab,底下会显示所有ab关联且关联度依次降低的10个string;这些数据来自于一个txt,里面的结构是string+其频率,可以对txt里的数据进行预处理。我一开始说的是首先将txt建立成字典树,然后每次ab输入在搜索栏后,对txt进行字典树查询,查出所有相关的string及其频率,对其按频率进行堆排序,取前十个。但是面试官说复杂度是ON级别的,还是太高,于是想着只能用hash了,最后说用对string排好序后建立hash表,草草结束。后来查了下是在字典树末尾建立hash。
6.手撕代码:将12345678这种格式的表示为字符串string,也就是说每两个代表一个ascii码。但是是16进制的,所以主要是转换。
7.旋转数组查找target。力扣原题,我说的是先用二分法查找到分界点,然后用二分法查target,面试官说能不能不找分界点,没想出来。

可以,但比较难。
HR面:问了一些个人职业规划和意向公司对比。

 

米哈游

一面:20min

基本全是常见问题, 答得太爽了, 导致速度有点快

1.DNS为什么基于UDP 

因为不需要建立连接,查询,直接发报文即可。

2.UDP包大小有没有限制,有,因为不适合IP分片。

3.LINUX下找不到动态链接库怎么办-只说有个g++指令,但是么用过

4.迪杰斯特拉算法及时间复杂度

二面说要去上海,报销路费,正在犹豫,大概率不去了。

 

cvte

一面:30min

全是基础概念,但都往深挖了一点,不过稍微想想也能想出来。面试官全程东张西望,不看人,不过也没什么,个人习惯吧。

1.UDP拥塞时如何处理

2.为什么一个指针大小是4byte

3.写一个指向数组的指针

4.深拷贝和浅拷贝

5.设计内存池的思想

 

二面:40min

最无语的一次面试,面试体验超过了诺瓦

先问了我几个常见基础题,然后让我讲对C++的理解,这个范围太大了,于是我就从语法到oop,再到STL,再到C++11新特性和多线程,linux下C++说了老半天。

然后,他问我java之父是谁,死了没。我说不知道,应该死了吧。然后他就暴怒了,说:你咒人家死啊!真的是很生气那种,一点玩笑都不开。接着又问我C++之父,我想着这个岁数比较大,应该是死了,然后又体验了一下刚才的待遇?问我C++2001年叫什么版本,不知道。最终它总结出一个结论------你的C++水平只有入门~~给我挂了。其实我就算能拿到也百分之一万不会去cvte,只是想增加一下面试体验,多学点东西,没想到这么让人难受。以前师兄们就说cvte只面试不招人,我是真的体验了,看来前人总结的经验真是不得不信啊。?

 

海康威视:

一面:30min

全程问项目,就问了一个链表和队列的区别

HR面:40min,聊的很开心,听说我有大华的offer,特别感兴趣,问那边给我开多少,这俩竞争对手真是太逗了?

 

百度:

再战百度,当初提前批智能云二面挂了,这次难度感觉比上次大很多

一二面:120min

1.聊了项目,为什么喜欢C++

2.现在不想写了,随后再写把

 

 

猿辅导

 

 

感觉面到现在跟提前批相比,手撕代码越来越多了,而且没有电话面了,都是视频面或者现场面。但是问基础的话大都还是原题高频题,除非面试官不按套路出牌。
还有就是许愿真的有用,感谢牛客!

 

  •  
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值