【发布时间】:2016-05-22 18:51:28
【问题描述】:
我进行了搜索,但找不到与我的问题特别相关的任何内容(或无法恰当地表达它),所以希望如此。
出于 UI 演示目的,我有 100% 分配给可变数量的项目 - 也就是说,我没有选择它们。我希望能够指定一个权重,例如,item A 的重要性是item B 的两倍。如果这些是仅有的两项,那么让我受益的百分比将是 67% 和 33%。如果我添加一个与item B 同等重要的item C,我会得到50%、25%、25%。
问题与语言无关,但实现语言是 C#,如果这有什么不同的话。
是否有适合此目的的算法?我意识到discrete distribution 可以用于选择,但由于我只对报告相关项目的百分比感兴趣以供用户理解,所以我不这样做。我有兴趣输入一组权重并得出百分比。我不熟悉允许这样做的东西。
【问题讨论】:
-
保留所有项目的计数器(在类似数据结构的哈希表中)和另一个变量
total_number_of_items。项目X的百分比分布将是counter[X] * 100 / total_number_of_items。
标签: c# algorithm distribution