代码拉取完成,页面将自动刷新
npm install double-bull-probability --verbose
#demo
'use strict';
import {
CardCombineMng,
CardColorEnum,
CardTypeEnum,
Card,
CardCombine,
CardCombineCompare,
CombineAlgorithm, } from '../double-bull-probability';
var exe = function (c) {
let cardCombine = new CardCombine(c);
let rate = CardCombineMng.winRate(cardCombine);
console.log("%s 牌的胜率为: %s", cardCombine, rate);
}
exe([new Card(15), new Card(14), new Card(13, CardColorEnum.HEI), new Card(13, CardColorEnum.HONG), new Card(13, CardColorEnum.MEI)]);
exe([new Card(2, CardColorEnum.FANG), new Card(1, CardColorEnum.HEI), new Card(1, CardColorEnum.HONG), new Card(1, CardColorEnum.MEI), new Card(1, CardColorEnum.FANG)]);
exe([new Card(13, CardColorEnum.HEI), new Card(1, CardColorEnum.HEI), new Card(1, CardColorEnum.HONG), new Card(1, CardColorEnum.MEI), new Card(1, CardColorEnum.FANG)]);
由于每组牌出现后,这组牌的每张牌的所有组合按道理说应该不会存在了,
应该要去掉那些不会存在的牌后在计算,
按这精确计算出来的与不去掉算出来的误差非常非常的小(总组合3162510),
还有计算去掉的也很耗时,所以就允许存在这个误差.
但有种情况需要手工的去掉,比如 [大王,2,3,5,10],这个的rank虽然不是第一,
但出现这牌由于牛牛并且最大的也是大王,所以胜率也是100%(跟[大王,小王,K, K, K]一样)
*) 第一次运行由于需要计算排名大概需要30s的时间,数据大小大约100m, 如果有什么好的办法压缩/优化算法可以探讨下
*) 这次发布的计算排名的时间快30%,数据大小减少50%(50M)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。