快手数分一面

# 一面60min
- 自我介绍&实习经历
- 搜索电商gmv下降,如何分析?
- 如何量化归因每个渠道对于搜索gmv的下降贡献(每个渠道体量不同的情况下)
面试官思路:构造一个统计量(忘了是啥)同时考虑品类的体量和变化值
- 用回归做归因合适吗?
面试官思路:不合适,因为有些爆品没有历史数据

abtest

- 如何计算样本量
- 设计abtest判断入口很深的功能变动对于整体的订单取消率是否有影响时,该功能的用户使用次数很低应该怎么处理(样本量过小)
面试官思路:样本是否能代表总体

两道sql

1. 计算GPA
exam_table(student_id, score, course_id, exam_time)
course_table(course_id, credit)
面试官说有问题,关于gpa的计算方式上有分歧,但是没听懂面试官的思路是啥…
```sql
SELECT student_id, sum(c.credit*e.score)/sum(c.credit) as GPA
FROM exam_table as e
JOIN course_info as c
USING course_id
GROUP BY student_id;
```

1. 计算次日留存率、七日留存率
用户活跃表(user_id, p_date)
当时没写出来,面完后写的,不确定是否正确
```sql
SELECT t1.p_date, count(distinct t2.user_id)/count(distinct t1.user_id) as 次日留存率
FROM table t1
LEFT JOIN table t2
ON t1.p_date=date_sub(t2.p_date, interval 1 day) and t1.user_id=t2.user_id;
```

次日留存率的定义为:t+1日中在t日活跃过的活跃用户数/t日活跃用户数
全部评论
您好,请问面试时写sql题需要提前准备好本地环境吗
点赞 回复 分享
发布于 2023-05-22 19:01 北京
求问友友,这是什么部门的数分实习岗
点赞 回复 分享
发布于 2023-04-28 13:16 香港
留存计算不对
点赞 回复 分享
发布于 2023-04-25 07:27 北京
请问是实习还是春招
点赞 回复 分享
发布于 2023-04-24 18:48 福建

相关推荐

09-09 11:03
山东大学 Java
1、自我介绍2、Java 的 AOP 是什么?作用是什么?主要解决什么问题?好处是什么?3、WebSocket 是怎样的一个协议?4、WebSocket 建立连接的过程采用的是什么协议?5、项目中如何解决多人协作过程中出现的冲突问题?6、协作过程中的锁逻辑是怎么实现的?7、HTTP 的请求信息里面有哪些内容?8、请求行里面有哪些具体的内容?9、谈谈 HTTP 请求过程中的传参方式是怎样的10、项目中 Redis 存储了什么样的数据?用的什么数据结构?Redis 除了字符串还有哪些数据结构?11、缓存的 key,value 是怎么设计的?和数据库中数据的对应关系是怎样的?12、谈谈项目中多级缓存的设计逻辑,为什么要用多级缓存,缓存的更新逻辑是怎样的13、谈谈什么是缓存雪崩、缓存击穿、缓存穿透以及这三种问题对应的解决方案14、为什么 Redis 的性能会比 MySQL 高这么多?是基于什么去设计的?15、谈谈项目中用 MQ 来处理什么问题16、MQ 中的消息被消费者接收了之后,如何保证消息一定会被完整处理?17、项目中对于消费者而言,消费逻辑的代码是怎么实现的?18、使用 MQ 过程中的幂等性是怎么保证的?19、除了项目中使用 MQ 的场景以外,MQ 还有哪些使用场景?20、反问
查看19道真题和解析
点赞 评论 收藏
分享
09-09 21:54
门头沟学院 Java
2025.9.9 米哈游一面 时长1h介绍一下这个断点续传还有批处理,用到了什么中间件追:那你们有没有考虑到这个消息队列的顺序性和重复消费问题,怎么解决你提到了消息幂等,怎么考虑的这个幂等框架,里面用到了lua脚本,怎么使用的追:有做什么降级补偿吗追:你对幂等怎么理解的怎么排除慢sql,优化索引,这是什么场景追:但是企业中一般是不使用join的,你还有什么办法吗(这里不同频了,我跟面试官说把子查询改成join,其实意思就是联表,他可能以为就是用join。懵了,开始乱答建表了,下次直接把这个场景删了)项目中的数据一致性你们怎么考虑的追:主库负责写,从库读,那主库更新,还没通过binlog同步给从,那从从库读的就是旧数据,这是如果又来一个请求读了从库,写入缓存,那刚才删除缓存就失效了,读的还是旧数据。怎么解决(之前真准备过,结果就答出来一种)项目这个悲观锁保证不超买,怎么理解这个悲观锁第二个项目使用了布隆过滤器,介绍一下布隆过滤器,以及怎么使用的追:布隆过滤器能保证数据存在吗解释下最左前缀匹配追:现在有三个索引a,b,c,a和c是等值,b是大于,如何建立索引,为什么(解释的时候还真说不明白了)redis主节点挂了,怎么选举算法:手撕快排,三数之和(手撕还是太糟糕了,快排记不住写不出,面试官给我换了道,结果最后问时间复杂度脑抽说成nlogn了,面试官笑了笑,不可能这么快的。真sb了)反问:有什么建议1.明白为什么要用这个方案做这个功能,为什么是你来做,你从中学到了什么2.对项目涉及的业务技术点要去深入,面试会追问总体面试难度真不难,主要就是围绕着实习和项目去问,索引范围查询得去补补,还有算法。唉,这么简单的算法一上面试还会卡住和慌张
查看16道真题和解析
点赞 评论 收藏
分享
自我介绍 AI Coding 你用的是什么工具?你让它帮你写代码还是写测试样例?你怎么做 review 的?你让它生成的是什么代码?八股GolangGolang 的特点是协程,那它是是如何实现的?(不会)那你开发的时候用到了 Golang 的哪些特性?Channel 了解吗?(只知道用来通信的,但没用过)Channel 有哪些类型?这些重要的特性你不熟悉的话,AI 生成代码后如何 code review?(都是 CRUD,数组和哈希,这些我都没见到过)算了,问你 C++ 吧指针使用时有哪些问题?内存泄漏如何做排查和解决?C++ 的垃圾回收机制是什么?那 Go 的 GC 是怎么实现的?Golang 用的是什么框架?Redis你们用的是什么消息队列?基于 Redis 实现消息队列,会消耗内存,代价会不会很高?怎么设计消息队列的生产和提交?分布式锁是如何实现的?SET NX 有什么问题?怎么续锁?续锁时间的设定依据是什么?消费者是如何判断队列中有无数据的,死循环还是轮询?你们用 Redis 存 token,会遇到缓存击穿问题吗?那抛开这个项目不谈,什么情况下会出现缓存击穿,怎么解决?你提到互斥锁,这里要怎么实现?了解过布隆过滤器吗?它能不能用来解决缓存击穿?那布隆过滤器能用来做什么?bitmap 的空间消耗是怎么样的?比如我有 100W 用户,要判断它们存不存在,要开多大的 bitmap?分布式锁除了 SET NX 还有什么实现?Redis 的内存淘汰策略是什么?如果说一个 key 没有设置过期时间,又被删掉了,这种问题怎么解决?key 到了过期时间,会被立马删掉吗?那它什么时候会被真正删掉呢?(追问太快了,本来要在上个问题一起讲的)MySQL你们的 QPS 有测过吗?索引失效场景?MySQL 有哪些锁?哪些场景下会用表锁?你说的这个 UPDATE 未走索引,触发的是全表扫描,不一定会用到表锁有哪些行锁?SELECT ... FOR UPDATE 加的是什么锁?MySQL 什么情况下可能出现死锁?(这个忘记了,只能往操作系统死锁扯一扯了)使用的时候没有遇到过死锁情况吗?你下去再了解一下,主要是在多表读写的时候,需要限制顺序,不然会有死锁数据结构二叉搜索树的数据结构大概长什么样?二叉搜索树的搜索时间复杂度是多少?你提到 2 为底,那 N 叉树的底为多少?红黑树了解过吗?(说了只知道节点有颜色)什么情况下会使用到红黑树?(说了 Epoll 内部用到,其它的就不知道了)那红黑树主要用来解决什么问题?它有什么优势?网络有了解过 HTTPS 吗?它是如何做加密的?它是对称加密还是非对称加密?对称加密和非对称加密的区别是什么?手撕乱序数组中第 K 大的数只要求写对,甚至可以直接调用 C++ 的优先队列,面试官貌似不太懂 C++,问了下 priority_queue 是干嘛的堆排序的复杂度是怎么样的?反问部门业务?金融部门,类似花呗、借呗(那应该挺核的)对应届生的培养机制?大概一个月的培养周期,技术方面和职场方面都有对 AI 对鼓励程度?都会用来提效建议?建议你夯实底层机制后,再利用 AI 进行提效,否则你可能判断不出来 AI 做的是不是对的。特别是对于我们这种金融业务,不能单纯信赖 AI 的几轮业务面?2 轮技术 + HR总结面试官看着像初入职场的,八股给我问爽了,答错的或答不上来的,直接当场就给我讲了
深圳虾皮信息科技有限公司一面458人在聊
点赞 评论 收藏
分享
评论
7
69
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务