快手C++算法工程化实习面经(一面+二面)

快手C++算法工程化实习面经(一面+二面)

更新:算是过了吧,准备拒了。
这次面试全是手撕题目,每一面三题,不过一开始都有一段自我介绍。顺便说一下,很多天以前面了字节,听说字节面试是这样的,结果全程问基础知识,两面完直接没了,可能是投的岗位不同?

一面

很迷惑,一开始面试官居然开始自我介绍了,然后说了一堆,大概介绍了一下部门。然后让我自我介绍。介绍完了就直接开始做题。

  1. 第一个题目给n个概率P,和为1,然后实现一个类,其中有一个接口是采样,按概率返回数(0-n)。
    我把他先转换成了整数,然后随机一个数字,再用一个二分来求数字,复杂度是lgn的。然后面试官说为什么不直接随机一个0-1的数呢,好像很有道理,我也不知道为啥一开始我就想转换成整数。然后又问能不能更快一点,说了一个用map存一下可以做到O(1)。然后问有没有空间O(n),时间O(1)的,然后想不出来了。后面面试官说下去可以看一下alias sample。
  2. 好像是剑指Offer的,给一个字符串求最长连续不含重复字符的子串长度。
    用双指针搞一搞就好了。比较简单,很快写完了。
  3. 百度面试的时候问过的一个类似的,让设计一个类,有一个接口是插入一个任务以及开始的时间,然后让我来设计安排处理任务。说是用一个优先队列,其实我一直不太清楚这种的要怎么设计,面试官好像觉得也还行,然后就没了,一面大概40多分钟就结束了。
  4. 让提问。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值