一些baidu面经
百度问的一些问题供参考:
1. epoll 和 select,epoll 两种模式,阻塞非阻塞;
2. 两个严格递增链表找出相同的元素组成新的链表; ref1 ref
3. 网络传输中如何传送一个结构体,实现一个通用的程序;
4. accept 非阻塞模式;
5. 两段话如何计算相似度
6. stl 中 vector 的实现;
================================================
一面
(一小时)
1.面试官从简历里抽了一个较感兴趣的项目,让把项目简单介绍了下,针对项目问了几个技术问题
2. 介绍Java中垃圾回收机制,程序员平时需要关注这个吗?为什么?请举例说明。
3. 数据库隔离级别介绍、举例说明。
4. override和overload的区别。
5. 求二叉树的最大距离(即相距最远的两个叶子节点),写代码。
6. 两个栈实现一个队列,写代码。
7. 你觉得你的优势是什么?有什么技术薄弱点吗?
8. 目前手上有offer吗?
二面
(40分钟)
1.详细介绍研究生期间的小论文项目。
2. 求二叉树的宽度,先简介思路再写代码。
3. Hashmap、Hashtable和cocurrentHashMap的区别,要讲出它们各自的实现原理才行,比如Hashmap的扩容机制、cocurrentHashMap的桶分割原理、多线程安全性。
4. 进程调度算法,有哪些算法比较难实现?
5. linux下如何修改进程优先级?(nice命令的使用)。
6. linux下性能监控命令uptime介绍,平均负载的具体含义是什么?建议看server load概念。
7. linux下如何调试程序?说到gdb,具体如何调试?如何查看core文件中的堆栈信息等(bt指令)。
三面
(1小时20分钟)
1.介绍我研究生期间的论文,讲的很详细,每个点具体采用的技术、实现方法等,花了较长时间。
2. 打印二叉树两个叶子节点间的路径,写代码(汗,百度这么喜欢问二叉树)。
3. 字符串中第一个只出现一次的字符,如何优化算法使得遍历次数更少?
4. socket编程相关,如果服务器这边调用write写了100个字节的数据,客户端想要获得这个数据,是直接用read系统调用,参数也是100吗?
5. 百度新闻缓存预算问题:一般为了追求时间性能,都需要缓存一些新闻数据,你怎么计算所需预算?然后申请需要的主机……
6. 多线程的适用场景是什么?为啥要用多线程?
7. 问是否会go语言,……
8. 为啥对技术感兴趣,一些相关问题讨论。
9. 聊北京、谈offer。
总结
三面都是技术面,总体下来没有特别难的题目,从我的面试情况来看,百度这次非常看重面试者对二叉树的掌握情况,还有所做的项目详细介绍。
作者:敏敏Alexia,欢迎关注她的个人博客:程序媛想事儿。
原文网址:http://blog.csdn.net/lanxuezaipiao/article/details/40054675
========================================================================================================================
找工作也告了一段落,最近也面了不少试,是时候做个总结,供有需要的朋友参考,顺便留给自己以后回忆。
先说下目前的状况,以后如果有新增面试经验可能会更新。
百度:实习三面->实习offer->1个月实习->转正offer->正在申请special
腾讯:这个比较坑,社招面了两次,一次是高级算法工程师,一次是地图检索组研发工程师,全挂。最近在内推TEG技术工程部,已到二面。
阿里:内推4面->在等offer
Google:发了面试邀请,还未参加面试。
本人目前的状况:属于屌丝级无所事事的码农,一天没事干,看看代码,修修bug。属于编程还过得去的码农。
百度(实习):
一面:什么话也不说,也不用自我介绍,直接拿笔开始写堆排序,由于比较粗心而且平时也是比较大大咧咧的,以至于写函数的时候,参数都懒得写全,我以为意思一下就行了,没想到面试官给我指出来了,幸亏他也没有太在意。第二个开始伪代码手写线程池,基本上了解过线程池原理就差不多,在顺带了解一下linux下posix规范也就OK了,或者用自己最熟悉的那一套线程库也OK,没有太大难度。最后设计一个算法,题目是:在拼音检索中,有很多key,分别对应的是不同的value,比如百度贴吧,bdtb,bdt,bd,b都可以对应到百度贴吧,百度糯米,bdnm,bdn,bd,b都可以对应,然后bd,b都可以对应百度贴吧和糯米,设计一套算法。
二面:二面的面试官很冷淡(与他共事之后发现他很好玩,哈哈),问了shared_ptr,auto_ptr的实现,只要看过源码基本上都差不多,memcpy,strcpy的区别,效率的话哪一个快,为什么,由于我没有看过源码也没有深入研究过,所以答的不是很好。最后给了一块业务组建上的代码,根据代码来猜意图,基本上都是STL,boost里面的东西,只要会用,看个八九不离十还是差不多的。
三面:三面是整个阿拉丁的高级项目经理,气质就是不一样,大概了解了下性格,说我语速很快,跟这边工程师很match,哈哈,然后就回去等消息了,过了几天HR通知
offer.
顺带说一下实习转正:只要你努力,认真去学,认真的思考,按时完成leader给的任务,然后有条件的话顺带拿几个其他offer,基本上就差不多了,现在在申请special。
阿里:
一面:忘得有点多,我大概回忆下,问了多态中的内存模型与linux下的滑动窗口协议栈,如何控制流量,为什么在近距离的网络传输的延迟比远距离的网络延迟要大。在问了一点ftp中设计思想,select的源代码,还有IBM的项目大概扯了点。
二面:在地铁中有入口和出口,每个站扣都有log日志,log日志记录了进入的时间和出去的时间,和公交卡ID,设计算法找出在地铁中停留中最短的公交卡ID。还问了,在云存储服务中,有命中cache,查询query的时候,会首先在cache中查找md5,如果查找不到,再去远程查找。设计一套cache,这个答的不太好,我只用了LRU,OPT的大概思想,在说了一下百度的工作,问了一些搜索引擎中的倒排检索。
三面:三面不知道面试官是忙还是怎么样,说你前两面评价还不错我就不问你技术了,然后扯了一点其它犊子就过了。
HR面:很正经的扯犊子,然后就让我等消息。
腾讯:
社招(高级算法工程师):跑到中国技术交易大厦,开始面试,面试官超屌,正眼都不看你一下。有很长一些数(百万级别),基本上都是递增的,有某小部分是乱序的,设计算法找出这一部分。还有一题忘了,然后就让我回去了,说有校招名额在通知你。
社招(地图检索组研发工程师):又叫我去,次奥,我以为有机会,(感谢若涵兄盛情款待,嘻嘻,以至于在等面试官中不那么无聊)到了面试官看完简历第一句我以为你是社招。。然后开始问,很多组数组,都是递增的,设计最优的算法找出所有数组中共同的元素,我已经想到最优了,也说了,又说如果有校招名额我们在联系你,大热天的跑来跑去,真醉了。
腾讯TEG技术工程部:
一面:感觉这次面试面的很不专业,问的大部分都是命令,工具怎么用,windows下的trace命令叫什么,有没有用过监控网络流量的工具,还有如果发现client和server的
延迟比较大,除了在代码中优化,应该还能在哪些地方优化,除了阅读代码,还有什么方式?1亿个数,找出最大的K个数。
二面:这次是副总监,问了IBM和百度的工作情况,深入问了Linux下的一些网络模型,tcp中的TIME_WAIT,CLOSE_WAIT,信号,条件变量,还有就是进程间通信,有几种方
法,找出Local下效率最高的通信模型。然后整准备问我算法,我的手机欠费了,电话自动挂断,然后就没有然后了。然后我现在还在等他的电话。
总结:校招还是比较注重基础的,基础需要打牢固。剩下的就是期待美团,蘑菇街,Google的面试能顺利通过了。
一些baidu面经的更多相关文章
- Google和Baidu常用的搜索技巧--转
原文链接:http://mp.weixin.qq.com/s?__biz=MjM5NTY0MTY1OQ==&mid=2654509772&idx=1&sn=754454e374 ...
- WordPress插件--WP BaiDu Submit结构化数据插件又快又全的向百度提交网页
一.WP BaiDu Submit 简介 WP BaiDu Submit帮助具有百度站长平台链接提交权限的用户自动提交最新文章,以保证新链接可以及时被百度收录. 安装WP BaiDu Submit后, ...
- 我离baidu.com有几跳
一.背景 最近,读了网易游戏面试经验(三) - cotyb - 博客园之后,自己尝试着在windows下tracert了一下baidu.com,结果如下图一所示,发现从tracert的结果看,似乎一直 ...
- 如何获取google地图、baidu百度地图的坐标
google:打开google地图-->查找目的地-->右键:此位置居中-->地址栏键入javascript:void(prompt('',gApplication.getMap() ...
- 提高Baidu Map聚合的效率
百度的MAP的例子里提供了一个聚合效果,地址是http://developer.baidu.com/map/jsdemo.htm#c1_4 ,效果图如下图: 这个效果很赞,但效率很低,当数据量达到50 ...
- Baidu set to lose leading role in digital advertising _china daily
advertising: n,广告 Online search giant Baidu Inc is set to loset its top spot in the nation's booming ...
- 官方提供的屏蔽百度转码Baidu Transcoder的方法no-transform
首先,百度在官方的声明中说:[喝小酒的网摘]http://blog.hehehehehe.cn/a/17112.htm百度仅作为中立的转码工具及相关技术的提供方.在转码过程中,百度对第三方网站内容不做 ...
- 调用百度地图API出现 error inflating class com.baidu.mapapi.map.mapview
问题如下 本来以为解决了,但后来重新运行了一下,又坏了,然后改成原来的样子,又好了. 结果就是:对不住了各位看官,没找到解决办法,不过经测试有个地方,可能在程序运行时,出现error inflatin ...
- 如何在一个div标签里显示出另一个网页? <iframe src=" http://www.baidu.com " width="800px" height="200px" scrolling="no" frameborder="0"> </iframe>
如何在一个div标签里显示出另一个网页? 用在div里用iframe,就像下面的代码 <iframe src=" http://www.baidu.com " width=& ...
- 百度定位API报错:leaked ServiceConnection com.baidu.location.LocationClient$1@426122f0
使用百度MapApi定位时候,当退出当时使用的activity后,则会报如题的异常,解决办法: 1:当退出当前定位的activity时,一定要在onDestroy方法中要mLocClient.stop ...
随机推荐
- (转)[小工具] Linux下列格式化工具 - column
当你看到Linux下命令输出的列歪歪扭扭时,是不是看着很不爽?column 命令就可以方便地解决这个问题. 比如: 我们一般就只用到上面这一个用法. column的其他用法如下: 选项 含义 -c 字 ...
- rabbitmq无用使用guest用户远程连接
最近开始使用rabbitmq,因为不了解,浪费了不少时间,记录如下: 使用场景:服务器(linux)上部署了一个app1模块,该模块向rabbitmq发送消息,我想让这个模块的消息发送到我本地(win ...
- 【文档】四、Mysql Binlog事件含义详解
下面对binlog中事件做个简单说明: UNKNOWN_EVENT 这个事件类型应该永远不会出现.它从不会写入binlog中.如果binlog中的事件没法被识别成其他已知事件,他被当做UNKNOWN_ ...
- Git学习系列之Git基本操作克隆项目(图文详解)
不多说,直接上干货! 想必,能进来看我写的这篇博文的朋友,肯定是了解过. 比如SVN的操作吧,最常见的是 检出(Check out ...), 更新 (Update ...), 以及 提交(Commi ...
- ES6-Async & 异步
依赖文件地址 :https://github.com/chanceLe/ES6-Basic-Syntax/tree/master/js <!DOCTYPE html> <html&g ...
- 每天一道leetcode203-移除链表的元素
考试结束,班级平均分只拿到了年级第二,班主任于是问道:大家都知道世界第一高峰珠穆朗玛峰,有人知道世界第二高峰是什么吗?正当班主任要继续发话,只听到角落默默想起来一个声音:”乔戈里峰” 前言 2018. ...
- IOS Masonry自动布局
之前项目用Frame布局,这个项目登录用了VFL,后来觉得用Masonry,前天布局TableViewCell时用了下 ,觉得还不错. #import "Masonry.h" #i ...
- C#中的分部类和分部方法:partial
这篇文章主要介绍了C#中的分部类和分部方法,讲解了类的拆分和方法的定义的拆分,需要的朋友可以参考下可以将类或结构.接口或方法的定义拆分到两个或多个源文件中.每个源文件包含类型或方法定义的一部分,编译应 ...
- jQuery事件篇---高级事件
内容提纲: 1.模拟操作 2.命名空间 3.事件委托 4.on.off 和 one 发文不易,转载请注明出处! 一.模拟操作 在事件触发的时候,有时我们需要一些模拟用户行为的操作.例如:当网页加载完毕 ...
- Rabbit安装(windows)
安装rabbit后,启动服务,浏览器打开控制台找不到.查百度说是要装插件.翻了好几篇都是互相抄,没有能用到. 多翻了几篇终于找到一个靠谱的.可以打开控制台了.记录下: 首先要安装Erlang语言支持, ...