Alias 抽样算法 python实现
理论基础
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190226204819246.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2d1YWlkb3VreA==,size_16,color_FFFFFF,t_70)
def alias_setup(probs):
"""
以图为例,凡是4代表的就是概率类型数的意思
a,记录下面那些部分的概率值(乘以4以后)
b,记录上面部分来自哪个根柱子,用哪根柱子的不来用来补足,使之概率为1
:param probs: 是一个概率的list
:return:
"""
num = len(probs)
a = np.zeros(num, dtype=np.float32)
b = np.ones(num, dtype=np.int)*-1