8375899 发表于 2018-5-12 10:08:13

[技术交流] 关于斗地主算法讨论(三)

逻辑判断及算法

len 0 pass
len 1 单牌 ->next 单牌 or 炸    判断 炸 是否大小王 or 4张相同的牌
len 2 双牌 ->next 双牌 or 炸    判断 聚合以后 list 长度是否为1 map[] 是否包含value 为2 ,value为2 的key 值进过大小判断器判断是否能出牌 or 炸
len 2 王炸 ->next null
len 3 三张牌 -> next 三张牌 or 炸 判断 聚合以后 list 长度是否为1 map[] 是否包含value 为3 ,value为3 的key 值进过大小判断器判断是否能出牌 or 炸
len 4 三带一 -> next 三带一 or 炸 判断 聚合以后 list 长度是否为2 map[] 是否包含value 为3 ,value为3 的key 值进入大小判断器判断是否能出牌 or 炸
len 4 四炸 -> next 四炸 or 王炸 判断 聚合以后 list 长度是否为1 map[] 是否包含value 为4 ,value为4 的key 值进入大小判断器判断是否能出牌 or 王炸
len 5 三带双 -> next 三带双 or 炸 判断 聚合以后 list 长度是否为2 map[] 是否包含value 为3 且 是否包含value 为2,value为3 的key 值进入大小判断器判断是否能出牌 or 王炸
len 5 单顺 -> next 单顺 or 炸 判断 聚合以后 list 长度是否为5 map[] 是否全部 value 为 1 key 为连续的5个数字,最小的key进入大小判断器判断是否能出牌 or 炸
len 6 四带双 —> next 四带双 or 炸 判断 聚合以后 list 长度是否为2 map[] 是否包含value 为4 且 是否包含value 为2,value为4 的key
值进入大小判断器判断是否能出牌 or 王炸
len 6 单顺 -> next 单顺 or 炸 判断 聚合以后 list 长度是否为5 map[] 是否全部 value 为 1 key 为连续的6个数字,最小的key进入大小判断器判断是否能出牌 or 炸
len > 6 单顺 -> next 单顺 or 炸 判断 聚合以后 list 长度是否大于6 map[] 是否全部 value 为 1 key 为连续的6个数字,最小的key进入大小判断器判断是否能出牌 or 炸

下次的章节我们将继续讨论golang 的实现。

di01 发表于 2018-5-12 10:58:52

学习了,逻辑性挺强的
页: [1]
查看完整版本: [技术交流] 关于斗地主算法讨论(三)