22届校招-C/C++软件开发工程师(深信服)
简单的说一下自己的情况,问了一下课程问题 学过什么 ,主要的学习方向
回答: 我说的是一个操作系统硬盘启动实现的项目的内容,列举操作系统启动初始化流程,然后他问我硬盘启动引导盘和非引导盘怎么标定,我回答的是int0x13 到哪个地址 0x7c 还是哪个字作为flag的 ps:记不太清了大致有印象 ,就是实现的时候为了在bochs模拟,肯定是在虚拟软盘和实际测试在硬盘启动他有一个寄存器的跳转地址不一样 .然后问了一下这个第一个区启动512字节的区域只有446字节可以用,代码怎么压缩的,在哪里压缩的.
因为简历上还有一个项目 是编译器那部分的 可能面试官不熟悉 他就问了一下具体实现了哪些,包括语法树生成和图着色算法的一些问题
ps: 对自己一知半解的项目一定不要胡乱往简历上加,容易踩雷,有一些面试官针对你的项目会问的很细,而且是那种只要自己做了肯定有印象的小点,要是只是看书和copy代码,没有认真读过代码的就真的答不上来,而且就算面试官不熟悉,他一边测评也可以现场搜某个点问你,编译器那面试官就是这么问我的
回答: 第一个肯定是map 键值和value 然后说还有其他方法吗
第二个我回答的是哈希一下 可以用单词哈希所得的数作为搜索索引
然后答了个map然后把键值和value互换 ,这样根据出现次数可以直接排词频
ps:这里我不是很理解他想问啥,然后就想到啥回答啥,其实就是问一些基础数据结构有没有掌握,能不能根据问题选择数据结构啥的
现场给了个题,leetcode简单的那种,字符处理,看给的字符串是不是合法的ipv4地址 ,然后让你现场写代码,到时间就停
这个会的话很简单的,没有任何算法,就是把字符串分割然后看你对ipv4的了解,非法输入都做考虑了吗,什么空串,0开头,夹杂字母,考没考虑到ipv4地址也能是二进制的.
回答:我开始用了正则表达式,但是他说最好别用,然后我又重新写了一下