应用场景:加权采样,即按照随机事件出现的概率抽样 具体算法: 举例如上,随机事件出现的概率依次是1/2,1/3,1/12,1/12;记随机事件的个数为N,则所有事件概率乘以N后概率为2,4/3,1/3,1/3; 记队列small,large分别存放小于1和大于1的事件下标(例子中small=[0,1],large=[2,3]): 记accept存放第i列对应的事件i矩形的面积百分比;alias存放第i列不是事件i的另外一个事件的标号; 每次从small,large中各取一个,将大的补充到小的之中…