大三的两场面试下来,我决定回学校读书

来源:互联网 发布:kingroot是什么软件 编辑:程序博客网 时间:2024/06/05 19:57

第一次去公司面试,面的是算法实习生岗位,问的有算法、java还有项目方面的问题。也许自己太年轻,还是第一次接触这么正儿八经严肃认真的面试,准备并没有很充分,特别是自己傻里傻气地“额”了好一会儿用一句“没有”回答“你有什么想问的吗”之后,觉得自己怂爆了……

先是问了我做过那些项目中参与度最高的是什么,然后要我写一下整个的实现过程(我简要的写了一下伪代码)。

问我项目中“smp的比赛中用户成长值是如何预测的”。然后顺着我的回答要介绍一下决策树,“决策树的关键在于选择分类的属性和停止的情况,而节点属性的选择一般会采用信息增益、信息增益率或者互信息等……”,然后要我讲解信息增益并书写公式。

信息增益:原信息的熵与用某属性来划分后的熵。条件熵:
entropy

就像这样,关于项目的问题他们会让我讲自己当时的思路,在我所提到的东西中随意抽出来问,写代码,写公式。总之如果简历上写了自己做过的项目,最好是自己真的做过、熟悉的,面试官会顺着你所讲到的东西,随意提问。还问了一些其它算法方法,比如“写一下神经网络的公式”“写一下贝叶斯的推导过程”“介绍一下分词”。

问完算法之后开始问java方面的题目。

如“Hashtable与HashMap的区别”。下面是我现在找到的比较全面的答案:

1、HashMap是Hashtable轻量级实现(非线程安全的实现),继承不同:Hashtable继承自Dictionary,而HashMap继承自AbstractMap,但是它们都完成了Map接口。
2、HashMap允许空键值,由于非线程安全,效率可能比Hashtable高。而Hashtable不允许空值。
3、Hashtable的方法是Synchronize(同步)的,而HashMap不是,在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap就必须为之提供同步。

“把整型1转成字符串的三种方法”:

int n = 1;String r = String.valueOf(n);String e = Integer.toString(n);String s = n + "";

”get与post的区别“:

get从服务器上获取数据,post向服务器传送数据。
get的安全性低,post安全性相对较高。

早上经历了第二次面试应聘的是数据挖掘岗位。

面试官是一名高高瘦瘦的青年男子,本来半个小时的面试我们又多聊了近一个小时,简直就像上天特意有所安排,在昨天被一轮考题轰炸之后今天的面试官温柔多了,居然聊着聊着聊到了学习目标、人生规划,细致到看什么书放什么心态甚至聊起各自的一些经历。

最后,”我不知道我今天说的你能接受多少,也许有一点吧,但其实我想传达的东西有很多,很多“。

就好像对待一棵小苗子一张白纸一样。

站在大三的开始,我经历了两场面试,之所以这么急着出去找实习,是因为学校的课实在太少太水了。而我也开始不满足于在实验室的学习,毕竟资源是有限,条件需要自己创造。我渴望有更大的平台、更多的机会去实践,用程序、算法解决真实的问题。而这两场面试,一场让我意识到自己的基础知识其实也还不够牢固,懂的还是太少,无论是数挖的算法还是编程语言,都还没有到熟稔的程度。另一场告诉我真正工作时候面对的问题:数据没有学校做项目的清晰干净,所有东西都放在数据库里面,可能是mysql可能是mongo可能是图片可能是excel……做的时候需要自己去找,工作的99%时候其实是无聊甚至恶心,也就1%的时候会有所成就……;给了我一些学习的建议:尽管编程语言只是工具,熟练掌握一门语言还是会有很大帮助的,可以自己尝试搭建系统。阅读国外的书籍,可以买几本国外基础的教科书……;试图教我沉下心来:大学阶段和毕业后一两年,还是在学东西的阶段,只要看清自己想要的是什么,认真点去钻研,可能一开始无名无利,两三年一个波动,所有人的境遇又有可能不一样了。

两个公司不是没有我能做的事情,只是如果我未来想从事数据挖掘工作,那些岗位的帮助微乎其微。
我承认我有点浮燥,才会有点急着出去找实习。
我想我还是应该回学校学习。
大三会是很孤单的一年,希望自己不要害怕。

原创粉丝点击