德州扑克ft是什么意思是什么意思呢。

&&&& 德州扑克想必很多人都玩过,当然对于新手需要说明的是,德州指的是德克萨斯州,而不是山东德州。
&&&& 这几个月一直在做一个德州扑克的服务器,分享下在计算最大牌型,比牌逻辑的算法和洗牌的方法,希望对大家有帮助。
&&&& 首先我们定义一下Poker类
public class Poker
private S // 图片扑克花色的表示(代表的是红桃、黑桃,梅花、方块
// 表示扑克牌面的大
public Poker(String tag, int num)
this.num =
this.tag =
public int getNum()
public void setNum(int num)
this.num =
public void setTag(String tag)
this.tag =
public String getTag()
public String toString()
return " tag: " + this.tag +" num: " + this.
&  这里说明下,ABCD代表四种不同的花色,2-16代表不同的牌面,A用14代替,我想不用多解释吧!
  首先是洗牌这块,我们奔着不重复造轮子的思想,借用Collections.shuffle(List)接口,去将52张牌打乱顺序,然后随机随机抽取。
&&&&& 首先是,获取每个玩家的最大牌型,即从N张扑克中取出5张最大的,我们从N张牌中抽出5张牌,有N多种算法,这里给出一个算法
private static Map&Integer, List&Poker&& SevenToFiveGroups(List&Poker& map)
Map&Integer, List&Poker&& group = new HashMap&Integer, List&Poker&&();
int num = 0;
for (int a = 0; a & 3; a++)
for (int b = a + 1; b & 4; b++)
for (int c = b + 1; c & 5; c++)
for (int d = c + 1; d & 6; d++)
for (int e = d + 1; e & 7; e++)
List&Poker& pukeGroup = new ArrayList&Poker&();
pukeGroup.add(map.get(a));
pukeGroup.add(map.get(b));
pukeGroup.add(map.get(c));
pukeGroup.add(map.get(d));
pukeGroup.add(map.get(e));
group.put(num++, pukeGroup);
&&&&&&在取得所有可能的组合之后,我们从这些组合中得到最大的一副手牌。为了得到最大的一副手牌,我们计算每付(五张牌)手牌的大小。首先对这五张牌进行排序,从大到小,手牌的大小为一个Long整形的数,手牌等级占两位(比如高牌为10,一对为11,二两为12,以此类推),五张扑克,每张扑克的数值占两位,所以手牌的大小是一个12位的整数,
  比如图1.2的一副牌
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 图1.2
   这副手牌的大小为
  需要注意的是,在遇到有对子的是情况,无论是两对还是三双,都要进行特殊排序,葫芦和三双的情况下,要把三个一样的大的牌排到前面,然后再排对子,这样才能保证在比较牌大小的情况下,正确比较出大小。还有就是在遇到A2345这样的顺子的情况下,要讲A排在最后,因为34567的顺子是比A2345大的。当然这两种情况是属于比较特殊情况,需要特别处理。
对应程序的算法为:
  首先计算手牌的等级,如果是顺子或者同花就不用说了,对子三双葫芦起始是相对比较难比较的,这里给出一个算法,
int Pukelevel = -1;
int flag = 0;
for (int i = 0; i & list.size(); i++)
for (int j = i + 1; j & list.size(); j++)
if (list.get(i).getNum() == list.get(j).getNum())
switch (flag)
&& & & this.level即牌型, 就是这样计算出来的,然后就是计算这副手牌的大小了!
long lon = L * 10;
this.pkValue = 0L;
for(int i = 0 ; i & this.list.size() ; i++)
int interval = 1;
for(int j = j & this.list.size() - 1 ; j ++)
interval *= 10;
interval *= 10;
this.pkValue += this.list.get(i).getNum() *
this.pkValue += this.level *
  剩下的就是对所有的情况,进行排序;所有玩家比较的时候,也是这样的情况!
& & &希望对大家有帮助。
阅读(...) 评论()查看: 3233|回复: 4
TPTK是什么意思啊?
学徒, 积分 348, 距离下一级还需 152 积分
学徒, 积分 348, 距离下一级还需 152 积分
竞技币1038
威望0 经验值348
主题帖子积分
竞技币1038
注册一个账号吧,也可以用QQ、新浪微博等账号登陆
才可以下载或查看,没有帐号?
TPTK是什么意思啊?新手见笑了/ a+ X# h% h/ d8 s# P
学徒, 积分 433, 距离下一级还需 67 积分
学徒, 积分 433, 距离下一级还需 67 积分
威望0 经验值433
主题帖子积分
顶对顶踢脚
出师, 积分 1873, 距离下一级还需 8127 积分
出师, 积分 1873, 距离下一级还需 8127 积分
威望0 经验值1873
主题帖子积分
经验值1873
Top Pair Top Kicker
学徒, 积分 188, 距离下一级还需 312 积分
学徒, 积分 188, 距离下一级还需 312 积分
威望0 经验值188
主题帖子积分
一直以为T是10
学徒, 积分 348, 距离下一级还需 152 积分
学徒, 积分 348, 距离下一级还需 152 积分
竞技币1038
威望0 经验值348
主题帖子积分
竞技币1038
谢谢啊,谢谢!7 E6 S2 |&&h) d) W
重要通知!! /2
活动名称:全场书籍单本7折,特惠套餐折上8.5折!
活动时间:1.04-2.10
这是国内第一本将德州扑克规则编撰成册最具权威性的书籍,由海南省扑克协会于2016.4编写出版,用于规范扑克赛事活动,引导扑克运动走向科学、规范、健康轨道。这也将成为德扑玩家们人手必备的的重要手册!
Powered by德州扑克游戏规则_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
<span class="g-ico g-ico-star g-ico-star-on" style="width:%">
<span class="g-ico g-ico-star g-ico-star-on" style="width:%">
<span class="g-ico g-ico-star g-ico-star-on" style="width:%">
德州扑克游戏规则
上传于||文档简介
&&新加坡德州扑克游戏规则
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩1页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢

我要回帖

更多关于 德州扑克鱼是什么意思 的文章

 

随机推荐