google 面经讨论

问大家一道狗家面经题,求教思路

如果知道有一大堆数据, 数据中只有ABCD, 根据已有数据,得到每个的概率

Follow up: 给定每个字符串的出现概率,让实现一个random generator去按概率随机生成字符串
,要求时间复杂度越低越好,空间尽量优化,所以不能二分查找。如果是整数就直接用一个array
,如果精度很高大概就是用多级不同精度的array进行查询
整数的就是比如A占10%, B占20%, C占30%, D占40%, 然后随机一个1-100的数,如果是
10-30之间就选B​。非整数的情况就要分得更细。(有点consistent hash的感觉!)

Follow up : 给文章怎么根据每个单词知道它下一个单词概率