IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

有道面试总结

Programming Life with Music 2010-03-09 13:11:34 累计浏览 7,055 次
本机暂存

    昨天去面了有道研发实习生,总得来说感觉不是很好。总结一下是很必要的。

    面试下午三点开始,总共持续了一个小时,纯粹的技术面,没有问任何非技术问题。

    一开始问了一些开发经验的问题,问我主要主要使用的开发语言是什么,会不会java,有没有windows开发经验等等。还有一个尖锐的问题就是问我现在在上大三,时间上如何保证….我又不好意思直接说天天翘课,就说对通信相关的课没什么兴趣。

    下面的问题是答得最失败的问题,题目是:“DNS是用tcp协议还是udp协议?为什么?”

    这个问题从直觉上感觉就是udp,但不知道如何从什么角度分析原理。于是乎扯了一堆dns服务器层次结构、如何处理dns请求。回来查了一下,发现问题并没有考虑全面:“dns协议客户在查询时用udp,在服务器见传送域名信息时用tcp协议”。想了一下,查询时用udp协议大概是为了降低服务器负载,若采用tcp协议,服务器要增加三次握手和错误重发负担,一旦出现网络阻塞,还会导致大量半开连接。另一方面,服务器之间的域名信息交换则要求较高的可靠性,宜用tcp协议。

    这道题目的经验就是,HR问一个问题后,不要张口就说,需要先进行全面的思考,组织好语言逻辑后,再开始回答

    下面是一道编程题:给定一个入栈序列,判断一个出栈序列是否合法。比如入栈序列是12345,54321是合法的出栈序列之一。

    因为说的是编程题,所以没在算法上考虑太长时间,写了个搜索。还是和笔试的问题一样,代码比较混乱,前后花了近20分钟。回来后找到一篇论文,介绍了一种线性的方法,过几天准备单独写一篇blog分析这个问题。

    最后是一道简单的算法题:给定一个数组{ai},求max{ai|i

    这道题还是很简单的,画个图就分析一下OK了。O(n)的解法是:从数组的左端开始扫描,维护一个当前最大值max,和当前的最大差值maxd,因为最大差值肯定是由当前的最大值减去当前的最小值得到的,所以计算一下当前最大值和这一位的差值,并且更新当前最大差值就行了。

总结

  1. HR提问时,尤其是一些和自己经历相关的经历,一定要主动展开,不要HR问一句回答一句。比如这次HR问到我大二写的那个类RAR的文件压缩器,我只是简单的说了一下是用MFC写的文件压缩器,而没有展开说

同分类推荐文章

  1. 等了十年的 Go 链式管道,终于来了:seq 让你像写 Scala 一样写 Go (2026-06-25 18:38:18)
  2. Go 实验特性详解 (2026-06-21 10:05:27)
  3. amd64 微架构级别对 Go 程序性能提升多少? (2026-06-21 09:38:49)

查看更多 后端 文章 →

建议继续学习

  1. SmartSprites - 命令行形式的CSS Sprites生成器 (累计阅读 123,898)
  2. Java开发岗位面试题归类汇总 (累计阅读 22,159)
  3. android 开发入门 (累计阅读 19,532)
  4. 我的PHP,Python和Ruby之路 (累计阅读 13,150)
  5. HashMap解决hash冲突的方法 (累计阅读 12,657)
  6. 为什么算法这么难? (累计阅读 12,398)
  7. 浅谈MySQL索引背后的数据结构及算法 (累计阅读 11,914)
  8. 加州求职记 (累计阅读 11,562)
  9. 谷歌(Google)2011年校园招聘笔试题 (累计阅读 9,574)
  10. 一个大二学生有关如何成为一名软件工程师的疑问及答复 (累计阅读 9,182)