秋招总结01: 大华面经

我的23届秋招基本上也快接近尾声了,后面开的大厂估计我也没有啥资格去竞争了, 对自己的能力还是有清晰的认识的。所以准备开这个帖子把自己三个多月的面试经历都整理一下,算是做个总结把。
本人基本情况是双非本,985硕,非科班、无实习。这些全让我占了,没有实习真的对于今年来说太难受了。真的今年秋招太难了,特别是成都应届生,今年八月份一个月真的是经历了太多了:高温、限电、疫情、地震。真的太难了。
不过三个多月来大大小小公司也还是面了十多家,基本上给了面试机会都走到了终面了。就包括有大华、禾赛科技、景嘉微、中兴、深信服、旷视、字节、百度、米哈游、小米、海康威视、华为等。

今天就开我秋招第一个公司:大华

大华一面:

1.自我介绍
2.类的构造函数可以是虚函数吗
3.静态成员函数可以访问非静态的成员变量吗(不可以, 如何访问怎么办:在静态函数的形参表里加上实例的地址;入参的时候把对象的指针传进来)
4.类的const常量成员的初始化必须放在哪里(是放在初始化列表里面, 只能初始化列表里面,(初始化列表是在编译的时候就指定了值,const成员不可以在运行的时候初始化))
5.const常量存储在只读区, 也可能会放在text段
6.熟悉STL里面的哪些容器,map 和 hashmap 的底层数据结构, 什么情况下用hashmap 什么情况下用map数据量上用什么
7.迭代器失效的场景有什么
8.排序算法,冒泡, 快排的时间复杂度
9.进程和线程的区别
10.创建一个线程调用什么函数, 退出调用什么函数(pthread_create, join, detach)
11.子进程创建一些知识点, 一些函数
12.**硬中断和软中断的区别(中断分为上部和下部, 把一些耗时的操作转到软中断里面去处理), 软中断除了硬中断可以触发, 还有什么可以触发(程序里面自己调用init指令, 定时器触发的是硬中断)**
13.描述一下内存的分配过程和寻址的过程
14.内存分配的算法有buddy算法和slab算法, 他们的区别, vmalloc malloc vmalloc是内核空间的malloc, 基于slab算法, malloc是基于brk,  brk和slab都是为了解决内部碎片的问题,都是基于buddydcfa , buddy算法是基于页框分配,没有外部碎片,但是有内部碎片,内部碎片是由slab算法来解决他会对buddy分配的内存进行管理缓存, 缓存之后解决内部存片问题。
15.为什么要四次挥手, tcp 和 udp的区别, 实际有写过网络编程吗, 套接字的一些选项(resuse, no_delay: 一般对于小数据的时候会延迟发送, 有了这个之后会立即发送,non_block:非阻塞 , 对于阻塞下,是以什么方式阻塞住, 会把线程阻塞住,cpu会让渡出去,等待一个信号, 自旋锁的底层原理, 对于多核cpu自旋锁是安全的吗)
16.套接字的缓存大小, 不同的缓存大小对接收的效率的影响,
17.因为没有及时处理,导致大量的内存被缓存队列里面,怎么确认该现象(为什么没有调度可以通过top去看一下,网络是不是有缓存数据怎么确认,netstat是可以看的,还有一个是在proc/nets下面有一些详细信息, )
18.linux虚拟文件都了解哪些除了proc/pid/tid/stack/ net内存信息网络信息
19.gdb 调式哪些命令(查看frame信息的命令 ?, 打印一个变量的信息 info locals, info  r 查看寄存器信息, 单步执行命令 -n, 跳转到一个函数里面 - s, 单步执行一个汇编指令 -si)
20.strcpy strncpy 的区别(当长度大于n 时, 只会截取前n个,不会加\0, 要是少于n个的话会用\0补充)
21.代码量, 解耦, 开闭原则

大华二面7.13面:20min

先介绍下项目-
1、一万个用户跟你建立长连接,都跟你发消息,你作为服务端怎么去做消息处理的模型?
IO线程+工作线程  用线程池去处理任务队列
IO线程与工作线程分离的好处:
1)职责明确化。**IO线程只负责IO的读写、编解码和心跳等简单功能,以便及时高效处理IO事件;**业务线程负责复杂的业务处理;
2) 降低客户端间的相互影响。**对于同一IO线程,避免了由于执行客户端A的请求阻塞而无法接受客户端B的请求等现象**;
2、生产者消费者模型 任务队列是有一个上限, 放满了放不进来了该如何处理,同时也不能让我们的线程池中线程空跑?针对这两个问题该如何处理?
3、消费者线程该放多少线程是合理的?
4、共享任务队列 抽象为一个类该如何实现?---考虑同步和互斥问题 需要几个条件变量几个锁实现
5、两个超大文件 都存了url,通过算法找到相同的url地址?
6、设计哈希策略,这个桶子大小设多少合适?
针对拉链法: 根据哈希表的负载因子数一般在0.7-0.8之间,根据我们的数据量大小/负载因子数大小 = 哈希表数组长度。并且一般设置为素数,减少哈希冲突
针对开放寻址法一般设置数据量的两倍大小。
7、rehash过程了解吗?查一个数据到底在原始哈希里面还是在新哈希里面

#大华面经#
全部评论
好难
2 回复 分享
发布于 2022-09-24 01:49 四川
Hello,我是恒生电子股份有限公司的校园大使,不想简历投递后“泡池子”, 登录链接:campus.hundsun.com/campus/jobs 填写我的推荐码:EVKGKJ 投递,简历第一时间送到HR面前,可查进度,快来投递吧~
2 回复 分享
发布于 2022-09-17 22:37 江西
想问一下楼主面的是哪个岗位呢?
点赞 回复 分享
发布于 2022-09-26 22:09 重庆
hi~同学,秋招遇“寒气”,牛客送温暖啦!23届秋招笔面经有奖征集中,参与就得牛客会员7天免费体验,最高赢300元京东卡!戳我去看>>>https://www.nowcoder.com/link/zhengjipinglun
点赞 回复 分享
发布于 2022-09-19 15:33 北京
点赞 回复 分享
发布于 2022-09-19 12:35 湖南

相关推荐

程序员花海:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
点赞 评论 收藏
分享
01-01 10:21
门头沟学院 Java
谁懂啊!我实习遇到的公司,真的太把实习生当正式员工使唤了,刚入职没几天,连项目代码结构都没摸透,就被安排写项目了!一开始都是些接口对接、数据格式转换的基础活,听起来不难,但架不住我对项目的业务逻辑、代码规范一窍不通。对着前辈丢过来的需求文档,我一边查代码注释,一边翻技术文档,磕磕绊绊写完功能,也只知道 “这么写能跑通”,根本不明白 “为什么要这么设计”,妥妥的知其然不知其所以然。本以为这种基础活会干很久,结果没过多久,领导直接甩给我一个小功能的开发方案,让我负责从方案落地到功能对接、测试上线的全流程。当时我直接懵了,硬着头皮啃需求、画流程图、写核心代码,遇到不懂的就逮着前辈狂问,加班加点成了家常便饭。更没想到的是,后面居然让我独立负责一个模块的开发,还要做性能优化。从数据库索引调整,到接口响应速度提升,每一步都得自己琢磨、自己验证。那段时间真的累到飞起,每天下班脑子都是懵的尤其是发版的时候,我比谁都紧张,盯着监控屏大气不敢喘,生怕自己写的代码出 bug 导致系统崩溃。一旦出问题,就得立刻配合运维回滚版本,然后自己留下来加班排查修复,常常整栋办公楼只剩我一个人的工位亮着灯。每天加班到深夜,工作量比正式员工还饱和,我不止一次对着电脑发呆:我到底是来实习的,还是来打工的?虽然这段经历确实让我的技术能力突飞猛进,但那种被推着往前走的疲惫感,直到现在想起来都觉得累。
大家实习都在做什么?
点赞 评论 收藏
分享
评论
23
88
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务