声明:虽然发表在愚人节,但是文章内容很严肃。
前几天在知乎有人问“作为一名做 Web 开发的 Java 工程师,算法在工作中基本不怎么用到,但为什么面试总会问算法的问题?”,原文地址: 作为一名做 Web 开发的 Java 工程师,算法在工作中基本不怎么用到,但为什么面试总会问算法的问题?。
我工作也有四五个年头了,个人觉得算法在工作中基本不怎么用到,
也可能是因为我工作内容的原因,我主要做web开发,请问大家对这个问题怎么看?
作为一名面试官,我很少面试语言的细节,这些都是可以通过看书或者手册学习到的。我比较喜欢看应聘者解决问题的能力。
原文太长,就不贴出来了。一次关于浮点数的面试。
很多毕业生都把计算机学成了文科,他们不是在学习理论知识,而是被动接受/背诵记忆这些知识。他们来公司,编程只是他们的工作而已,聘用他们的真正目的是解决问题,用程序解决很多人共性的问题。
我面试时,他们可以使用任何工具甚至Google,当然,我出的题目一般都不能直接个Google到,虽然网上没有现成的答案,但是可以总结出答案。
我的观点是,如果你的任何问题都可以用Google直接解决,你不可能成为一名特别优秀的程序员。
你搜索到的是数据,即使你保存在了evernote,说白了就是01串,你阅读了,思考了,这些数据就变成了信息,0101010…11101
变成了 int a = 4;
你再继续思考,使用,深化,这些信息就变成了知识。 你会说:『哦,这不是李氏代换原则吗?咦,这不就是工厂模式吗?』
数据 --> 信息 --> 知识。
最后重申一下: 学历代表过去,能力代表现在,学习能力代表将来。