type
status
date
slug
summary
tags
category
icon
password
创建时间
Dec 25, 2024 12:26 PM
给你一个 下标从 0 开始 的正整数数组
w
,其中 w[i]
代表第 i
个下标的权重。请你实现一个函数
pickIndex
,它可以 随机地 从范围 [0, w.length - 1]
内(含 0
和 w.length - 1
)选出并返回一个下标。选取下标 i
的 概率 为 w[i] / sum(w)
。- 例如,对于
w = [1, 3]
,挑选下标0
的概率为1 / (1 + 3) = 0.25
(即,25%),而选取下标1
的概率为3 / (1 + 3) = 0.75
(即,75%
)。
使用前缀和构造范围,然后使用二分查找来找随机数对应区域的索引。