【秋招】快手_数据分析岗_面试题整理

1. 不用任何公开参考资料,估算今年新生儿出生数量

    1)采用两层模型(人群画像*人群转化):新生儿出生数=Σ各年龄层育龄女性数量*各年龄层生育比率

    2)从数字到数字:如果有前几年新生儿出生数量数据,建立时间序列模型(需要考虑到二胎放开的突变事件)进行预测

    3)找先兆指标,如婴儿类用品的新增活跃用户数量X表示新生儿家庭用户。Xn/新生儿n为该年新生儿家庭用户的转化率,如X2007/新生儿2007位为2007年新生儿家庭用户的转化率。该转化率会随平台发展而发展,可以根据往年数量推出今年的大致转化率,并根据今年新增新生儿家庭用户数量推出今年估计的新生儿数量。

(一般面试中采用1的方法,即费米估计问题,可以参考《这也能想到?——巧妙解答无厘头问题》)

 

2. 给你一个无序数组,怎么才能合理采样?

无序数组是相对有序数组而言的,无序数组并不等于随机,我们要做的是将无序数组洗牌,得到随机排列。

对于无序数组,n个元素能产生n!种排序。如果洗牌算法能产生n!种不同的结果,并且这些结果产生的概率相等,那么这个洗牌算法是正确的。

方法:for i in range(len(n)): swap(arr[i], arr[random(i,n)])

这段代码是对随机确定数组第一位的值,然后递归对剩余的数组进行相同的过程,可以产生n!中等可能的排序情况。

(参考资料:https://blog.csdn.net/rtian001/article/details/50348999https://blog.csdn.net/jiang_zzz/article/details/53786999

 

3. 扑克牌54张,平均分成2份,求这2份都有2张A的概率

M表示两个牌堆各有2个A的情况:M=4*(25!*25!)

N表示两个牌堆完全随机的情况:N=27!*27!

所以概率为:M/N = 9*26/53*17

©️2020 CSDN 皮肤主题: 精致技术 设计师:CSDN官方博客 返回首页