之前参加了景驰的笔试(满分),后面由于人招满了所以没有给面试机会,现在被捞起来了,面试的岗位是「软件工程师 – 实习生」
景驰科技第一轮面试
面试环境:微信语音 + collabedit
大概面试前一个小时HR会建立一个微信群,然后面试开始的时候面试官会加你的微信,然后微信语音聊天和collabedit进行代码共享的方式进行面试
了解过无人驾驶吗
手撕矩阵快速幂
我的写法是封装了一个Matrix的结构体,然后重载乘法为矩阵乘法,然后写个快速幂就可以了。
写之前需要和面试官讲讲自己的思虑,其实就是快速幂的原理(只能说好险没忘)
- 一道简单的数学题(面试官说的)
一开始给了一个错误的思路,面试官叫写一下代码看看,然后还没开始写,我整理思路的时候就发现错误了,很尴尬,后面自己想通过枚举的方案,把答案整理为序列化的结果,然后得出答案。最后虽然猜出了答案为 12 1 2 ,然后面试官让我试着尝试一下怎么推出来的,引导了半天还是没推出来,很尴尬。
正解:100人坐飞机,第一个乘客在座位中随便选一个坐下,第100人正确坐到自己坐位的概率是?
- 有过哪些工程(项目)经验
说了一些自己以前写的一些小东西,没有详细问,就问了做了些什么
- 想学习哪些经验
景驰科技第二轮面试
面试环境:微信语音 + skype
这次是面试快开始的时候,面试官是直接加你微信的,然后就开始面试了,平台是在skype上,是有视频的,所以穿着什么的需要注意点(当时以为跟一面一样,所以穿着还有精神状态不是特别好)
- 让你对一个整数数组进行翻转操作
给你一个整数数组,和一个下标pos,比如说给你[1,2,3,4,5],2(下标从0开始),然后输出的结果为[4,5,1,2,3]
貌似是《剑指offer》上面的原题,注意一下下标就可以了
- 经典的上楼梯问题,就是一个人上一个楼梯能走一步,或者两步,或者三步,问你上到第n级台阶有多少种方案?为什么dp能保证方案数不重复?
转移方程很显然就是: dp[i]=dp[i−1]+dp[i−2]+dp[i−3] d p [ i ] = d p [ i − 1 ] + d p [ i − 2 ] + d p [ i − 3 ]
第二个问题没答出来:面试官说了以后,其实很好理解,假设前一个状态是方案数不重复的,那么由于下一个状态是+1、+2、+3,三个步数不同,所以下一个状态也是方案数不重复的
- 在上一题的基础上扩展了,就是必须保证连着的两个方案是不能重复的,也就是上一次上一格台阶,这一次不能再上一格台阶了,即上到第二格的方案数是2,第三格的方案数是3
动态规划不是很擅长,在面试官的引导下写出了转移方程,因为只要知道上一个状态选择那种方案的方法数,那么就知道怎么推了,那么采用两维的dp来表示状态
dp[i][j]: d p [ i ] [