发牌算法(java)

原创 2016年05月30日 23:26:40

思想描述:先将牌排好序,然后随机抽出一张牌和前面的牌交换,count–(count为未排序的牌个数),最后输出类数组。

class sendPoke 
{
    private String num,type;

    public sendPoke(String t,String n)
    {
        this.type = t;
        this.num = n;
    }

    public String toString()
    {
        return type+" "+num+"  ";
    }
}

class send
{
    sendPoke poke[];
    public void chushihua()
    {
        poke = new sendPoke[52];
        String num[]={"A","2","3","4","5","6","7","8","9","10""J","Q","K"};
        String type[]={"方块","梅花","红桃","黑桃"};
        for(int i=0;i<52;i++)
        {
            poke[i]=new sendPoke(type[i/13],num[i%13]);
        }
    }
    public void xipai()
    {
        int count=52;
        for(int j=0;j<52;j++)
        {
            int x=(int)(Math.random()*count);
            sendPoke temp=poke[count-1];
            poke[count-1]=poke[x];
            poke[x]=temp;
            count--;
        }
    }
    public void fapai()
    {
        for(int i=0;i<52;i++)
        {
             if(i%13==0) 
                System.out.println("\n");
             System.out.print(poke[i]);
        }
    }
}

测试块:

public class test_sendpoke 
{
    public static void main(String[] args)
    {
        send c1=new send();
        c1.chushihua();
        c1.xipai();
        c1.fapai();
    }
}

其中一种结果:
方块 8 红桃 4 红桃 7 方块 5 梅花 5 梅花 2 方块 3 黑桃 7 梅花 8 红桃 Q 红桃 9 方块 Q 黑桃 10

黑桃 J 梅花 Q 梅花 6 黑桃 4 方块 4 黑桃 3 方块 9 黑桃 A 红桃 3 红桃 J 梅花 10 方块 2 梅花 K

方块 6 黑桃 K 梅花 7 红桃 2 红桃 5 黑桃 6 梅花 J 红桃 6 梅花 3 方块 A 黑桃 5 方块 J 红桃 10

方块 7 红桃 K 黑桃 Q 红桃 A 梅花 9 黑桃 9 黑桃 8 红桃 8 黑桃 2 梅花 A 方块 10 方块 K 梅花 4

版权声明:本文为博主原创文章,未经博主允许不得转载。

java随机发牌算法

  • 2017年12月01日 21:10
  • 809B
  • 下载

java桥牌发牌算法

参考文章: http://www.cnblogs.com/Jax/archive/2008/07/19/1246692.html http://bbs.csdn.net/topics/8033325...

C#模拟扑克牌发牌算法

  • 2012年03月19日 11:50
  • 3KB
  • 下载

ios面试算法题(5)——扑克发牌、最小和差问题、V字图形打印

今天给大家介绍几种有意思的算法,优化并不是很好,有想法的大家多多交流交流 1、程序模拟将52张牌随机发送给四个玩家(大小王除外) // // main.c // randPoke ...

洗牌、发牌算法 (打乱扑克牌顺序)

#include  #include  #include  int d[6]; int i,n,a,b,t; int c,j; void main() {     srand(time(...

java发牌游戏

  • 2013年04月08日 17:07
  • 3KB
  • 下载

java实现模拟发牌

  • 2012年11月25日 09:45
  • 7KB
  • 下载

线性表15|魔术师发牌问题和拉丁方阵 – 数据结构和算法20

线性表15 : 魔术师发牌问题和拉丁方阵   让编程改变世界 Change the world by program   题外话   今天小甲鱼看到到微博有朋友在问,这个《数据结构和算...

Java上机实验发牌游戏

  • 2014年12月08日 18:19
  • 996B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:发牌算法(java)
举报原因:
原因补充:

(最多只允许输入30个字)