第二次面试--实习岗---小米推荐算法--电话面试

本文分享了一次面试的经历,包括面试官的友好态度、面试过程中遇到的问题及解决方案,特别提到了两个编程题目:编辑距离问题和数组重排以最大化区间和的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

面试官人挺好的,说话挺温和的,
面试问题如下,(晚上七点开始)
1 开始先自我介绍,由于准备好了自我介绍,但是打开电脑的时候正好自我介绍,本来想照着念一下准备好的稿子,结果,错失了良机,只能记得多少说多少了。
2. 自我介绍的时候人家会看你的简历,有什么可以捕捉的问点,看到我简历上写了,天池的新人赛,就让我介绍了这个比赛,这个时候已经打开了电脑,就照着我写的比赛记录过程念了一下,然后问见我使用了xgboost的算法,让我介绍对这个算法的了解,为什么使用这个算法,好在哪里,这个回答我也总结了,但是说的没有逻辑,并不是很好,确实有必要记一些专业的名词,否则显得的很不专业,面试官可能觉得我做的没啥可问的,就问我本科做过啥相关的,想找一些我身上的亮点来问,我就跟他说了一下本科就参加过一些算法的竞赛,ACM入门的铜奖,蓝桥杯之类的,然后就开始写算法题了,给我发了一个有道云笔记的链接,云共享,双方都可以看到对方的操作(记事本编程),里面有两个题,如下
第一题
定义:已知两个字符串s和t,现在可以对s在任意位置执行三种操作:插入一个字符;删除一个字符;替换一个字符,求将s变成t所需要的最少操作次数
int editDistance(String s , String t) {
}
网上有答案,牛客网原题,虽然做过,但是只记得大概思路,写了个大概,PS(虽然有源码,但是不想粘贴过来,因为怕他问我是怎么想出来的,我就没法跟他解释了,说到底,这个题不是真的会)
奥,对了,他看了我写的,指出来了一些小问题,是不是XX地方有问题呀,我一看,果然是,再夸一句,人确实挺好的,不会嫌弃你这也不会,那也不会,
第二题
给一个长度为n的数组a,有q组询问,q远大于n,每组询问是一个区间,现允许重排这n个数字,要求q组询问的区间和的总和最大,求这个最大值
举例:比如数组{2,0,1,0,3,4,5,6},两组询问[2,4]和[4,6],最优的重排方式为{0,0,2,3,6,4,5,1},这样重排后24区间的和就是a[2]+a[3]+a[4]=11,46区间的和就是a[4]+a[5]+a[6]=15,总和为11+15=26,由于没有别的排列方式可以得到比26更大的数字,所以答案是26
double getMaxSumInRequest(int[] array, List<int []> queryList ) {
}
他说可以打开本地环境写,我就用了idea写,早知道,上个题我就不在在线文档里写了,思路是有的,维护一个数组,每次记录统计。。。。。。。(此处省略)。。。。。(因为不是最优的)
然后写完了给他看,他大概看了一些,没说啥,可能是写的还酬和,问我有啥想问的,我说,第二个题我知道肯定不是最优的,能提供一下最优的思路吗,(看面经,人家都这样问,我也这样问,),然后他说可以在O(n)的时间内出来,具体让我查一下,然后我说那好吧,我又问了结果什么时候出来,他说最近两天把,就互道拜拜了
对了,最后还问我最快什么时候能实习,我就说了,六月底,
没想象中的难,也可能是简历没啥问的
8点结束,整整一个小时,半个小时在写代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值