美文网首页
2015-9-20 百度一面

2015-9-20 百度一面

作者: Alphy | 来源:发表于2015-09-23 11:01 被阅读230次

百度一面(八十分钟)

面软件研发工程师。

自我介绍后,面试官开始问我项目。大概流程是:从项目到数据结构,到内存管理,再到提升程序效率的技术。期间穿插了很多知识点。数据结构相关:链表,红黑树,哈希表等。内存管理相关:STL allocator 模型,new 和 malloc 的区别,重载 operator new,placement new 等。提升效率相关:缓式评估和超急评估等。

面试官问了自定义 lib 后名字冲突的问题。聊了一下名字空间和 extern C 关键字。

面试官问了多线程访问文件的问题。我问他能不能理解成读者写者问题,他说所有线程对共享文件都是只读的。我说父子线程会共享文件描述符中的“文件当前的访问位置”,各个线程需要维护自己的文件标志。

面试官问了一个大文件排序问题,我说是不是可以理解为海量数据的排序,他说可以。我就简单说了一下外排。

个人感觉以上部分是答的比较好的。

接下来,面试官问了 C 语言平台移植需要注意的细节,以及当程序出现“不确定性 bug”时应该如何处理。这两个问题答的不好。第一个问题没有回答出来,他提示了一下 32 位和 64 位机上,寻址空间不一样,我就顺着说指针长度不同会导致程序出问题。第二个问题,我说能不能输出程序日志,他说实际应用时中间变量可能难以输出且无法分析;我说能不能分模块调试,他说程序是串行的各个模块没法分开,而且可能存在多个模块都有 bug 的情况;我实在答不出来,他把问题换成了“你推断一下可能会出现什么问题”,我说 C 中容易出现指针访问越界及指针悬空的问题。

接下来是写程序。先是一道拷贝字符串的问题:给定一个字符指针,返回一个拷贝过值的新指针。先和面试官聊思路,之后写代码。完后面试官看代码,指出了两个问题:第一,没有判断 malloc 函数十分执行成功;第二,对新申请到的地址没有做清零处理(比如,定义变量,最好写成 int a=0; 而不是 int a;)。当时面试时没什么感觉,事后回想起来确实不应该犯这种错误,心有点虚。事实上,这种问题很有可能是致命的,所以今后一定要谨慎再谨慎。

第二题,是一道读写文件的题:给定一个值 N。从一个 M 行的文件(M 未知)中取出 M/N 行(只要求取出行的总数为 M/N 行即可),存入文件 test 中。将剩余行存入 train_1,train_2,...train_k 中,其中,第 train_i 个文件中的行数需为 (M/N )*i。刚看到题时有点懵,接着在纸上举了几个例子,研究了一下,弄明白了解决方案。把思路说了一下,开始写代码。期间也有遇到不少细节问题,基本上都是一边探讨一边写,花了不少时间。

最后闲聊了一会儿,面试官问了我就业地点选择、职业规划以及岗位选择的问题。因为面试时间过长,所以省去了面试者提问这一环节。


我的感受:

1.可能是因为正好面试官也是做 C 的,所以他的大部分问题,我都能够说出来。师兄送过我一句话,“适合自己的才是最好的”,所有事情都一样。

2.简历上写了“期望工作地点:北京”,面试官后来有和我聊这个话题。事实上,简历中的每一个词语都有可能成为面试官的发问点。

3.这次面试时间确实太长了,但面试官还是很礼貌地陪我聊了很久。很谢谢他对我的尊重。其实目前我所遇到的每个面试官都挺客气的,只需放松心态即可。

相关文章

  • 2015-9-20 百度一面

    百度一面(八十分钟) 面软件研发工程师。 自我介绍后,面试官开始问我项目。大概流程是:从项目到数据结构,到内存管理...

  • 校园恋爱观

    写于2015-9-20 10:15 当浮躁和功利充斥着校园,幻想中美好的校园恋情又剩下些什么?近来尤为关注这个问题...

  • 百度一面

    1.统计页面中出现的标签,并找出次数前三的标签2.实现log方法封装console.log()方法3.获取url的...

  • 2021-05-31柯里化实现累加函数

    题源 百度技术一面 题目 柯里化实现累加函数 解答

  • 百度一面(9.19)

    介绍实习 acid隔离级别 mvcc cas aba问题 java8的default方法,向上兼容 跳台阶 手机解...

  • 百度现场一面

    早上去洪广大酒店去面了百度现场一面,C++研发岗。我前一个室友面了1个小时多,结果我只面了40分钟,有点奇妙。 僵...

  • 百度电话一面

    作者:CZ19911223 链接:https://www.nowcoder.com/discuss/32548?t...

  • 2017.08.16百度一面

    前言 才面完蘑菇街就收到了百度的短信,没办法,面吧 面试题 1.自我介绍 这次真是超级后悔提Angular 2.为...

  • 百度前端一面

    1.块级元素和行内元素的区别和举例2.HTML5的新特性3.清除浮动的方法4.BFC清除浮动的原理5.盒子模型6....

  • 阿里中间件/百度/蚂蚁中间件Java岗面试究竟有多难?你亲自体验

    百度(三面) 百度一面(现场) 自我介绍 Java中的多态 为什么要同时重写hashcode和equals Has...

网友评论

      本文标题:2015-9-20 百度一面

      本文链接:https://www.haomeiwen.com/subject/ocvicttx.html