程序员的自我修养
Home » 分类目录 » 面试

也谈“最糟糕的编程面试题”

4条评论6,312次浏览

长假过后的第一天,突然看到一篇让我十分有共鸣的文章——最糟糕的编程面试题。这篇博文主要吐槽了面试题中最常犯的2个问题:太过困难不切实际。而文中举的例子:如何检测链表是否存在环路,也恰巧是我曾经被面试过的一道题目。而那次面试也堪称我面试经历中最让人难(dan)忘(teng)的一次。

第一个故事——最难忘的面试

背景:校招,笔试通过后连续三轮面试,每轮都会刷一部分人,具体是那个公司就不说了,相信去过的同学基本都能猜出来。第一面,自我感觉表现一般,等结果时一直在想会不会一轮跪。结果这个岗位19个面试者刷了13个,我有幸留下了。第二轮,自我感觉十分良好。面试官问了很多这样的问题,如:如何判断两个链表是否有共同的尾巴、字符串相似度、链表中两元素交换等等。

后来他问到如何检测链表是否是环形链表,也就是首尾相连的链表,我当时想了想就答道,用2个指针,开始同时指向一个节点,然后一个指针移动,另外一个不动,若它们再次指向同一个节点,则是环形的。面试官笑道,用2个指针的想法不错,能否继续改进?我想了想,时间复杂度已经是O(n)了,难道要变成O(lgn)?那岂不是要借助于树之类的方法?这貌似有点太难了,短时间之内无法搞定。面试官看我犹豫了很久,提示到,还是使用2个指针,你再想想有没有其它的方法。然后我纠结了半天后,尝试的说了个当时觉得很粗(cao)糙(dan)的方法:一个指针走2步,一个指针走1步。没想到这尽然真是面试官的“标准答案”。面试官笑呵呵的说,不错不错。于是我心里一阵阵小激动,看来不用多久,我就会升职加薪,当上总经理,出任CEO,迎娶白富美,走上人生巅峰,想想还有点小激动呢。

阅读全文>>

分类:面试
标签:
11
profile
  • 文章总数:81篇
  • 评论总数:241条
  • 分类总数:32个
  • 标签总数:45个
  • 运行时间:1253天

大家好,欢迎来到selfup.cn。

这不是一个只谈技术的博客,这里记录我成长的点点滴滴,coding、riding and everthing!

最新评论
  • Anonymous: :?: :razz: :sad:
  • Anonymous: 牛
  • Anonymous: 楼主你好,我偶尔也会 遇到Reconnect due to socket error: java.nio.channels.ClosedCha...
  • Anonymous: sdfs
  • Anonymous: :arrow: :neutral: :cry:
  • Anonymous: java.io.NotSerializableExcepti on: DStream checkpointing has been enabled but the DStreams with their...
  • wick: HI,请问一下,U,S,V得到 ,怎么得到近似矩阵 (用spark java),谢谢。
  • Michael Whitaker: Thank you for this blog, it was very helpful in troubleshooting my own issues. It seems that no...
  • Anonymous: :mad:
  • Anonymous: :???:
  • Anonymous: :mad: :mad: :mad:
  • 洋流: 哥们,我问个问题,你 把testOnborrow去掉了。。 如果得到的jedis资源...
  • 洋流: 哥们,我问个问题,你 把testOnborrow去掉了。。 如果得到的jedis资源...
  • Anonymous: :razz: :evil: :grin:
  • 张瑞昌: 有很多,比较常见的是 Jacob迭代法,一次迭代O (n^3),迭代次数不清楚 ...
  • Anonymous: :mrgreen:
  • lc277: 你好 我想问下一般删除节点 要多久,要删除的datano de大概用了1t,解除...
  • Anonymous: 你好 我想问下一般删除节点 要多久,要删除的datano de大概用了1t,解除...
  • Anonymous: :smile: :grin: :eek:
  • 李雪璇: 想要完整代码,可以帮 忙发给我吗