杂记:腾讯暑期实习 Web 后端开发面试经历

今天面试(一面)腾讯暑期实习 Web 后端开发,一言难尽。

第一部分,常规的自我介绍。

介绍完,面试官问我对人工智能有什么理解?深度学习和机器学习的区别?对调参有什么见解?语音识别中怎样运用了机器学习?这一部分直接让我懵掉了。可能是因为我在简历中有过一个语音识别的项目经验,但那只是大二的一个课程作业,我对其中的原理并不十分了解,只说了什么 Kaldi 的内部是 GMM+HMM 模型实现的,唉。

接下来是四道编程题,第一题写阶乘,我用递归和循环都写了一遍;第二题整数反转,不让用 Python 的 int(str(n)[::-1]),也是基础,我还加了对负数的支持;第三题求两个集合的交集,我太紧张只想到一个 \(O(N^2)\) 的。第四题单向链表,仅知道一个指向某个元素的指针,不知道头指针,要求删除当前元素。我的解法是把后面那个元素的值复制到当前元素,然后把当前元素的next指向下下个元素。

接下来两个逻辑题:1. 有两个没有刻度的水杯,一个能装5升水,一个能装3升水,用他俩搞出4升水来(有无限多的水)。这个问题也比较简单,但我当时太紧张,稍微想了一段时间才给出方法;2. 有一个100层楼,你有两部手机,请用最少的次数测试出在第几层手机会被摔碎。这个问题就是 Google 面试题改编,我之前听老师说过,所以这个假装思考了一会儿,答出来了。

然后问我为什么喜欢编程?

整个面试过程居然有一个半小时,可能是之前聊人工智能的部分比较拖沓,写程序也是没有时间限制的。整个面试流程大致如此。

上一篇:我利用网上代码开发的JQuery图片插件


下一篇:ligerui_ligerTree_002_利用JavaScript代码配置ligerTree节点