洗牌算法关于洗牌算法,请用JAVA编写,定义一个数组,储存1-52以内的数,打乱顺序输出!

洗牌算法  时间:2021-07-01  阅读:()

怎么证明这个洗牌算法是随机的

有一副牌假设有N张,请设计一个随机洗牌算法。

解决方案: 这里只给出一个可以使用数学证明每张牌出现在任何位置概率为1/N的算法。

Poker[N] for (i = 0; i < N; ++i) { k = rand() % ( i + 1) if (i != k) { switch(Poker[k], Poker[i]); }

关于洗牌算法,请用JAVA编写,定义一个数组,储存1-52以内的数,打乱顺序输出!

import java.util.Enumeration; import java.util.Hashtable;/** * 7. * 乱序扑克牌 洗牌方法 8. * 9. * * * @author virture 10. * 11. */ public class Cards { Hashtable htMember = new Hashtable();// 放置扑克牌的Hash表 public Cards() { } public void put(String card) { htMember.put(card, card); } public void get() { System.out.println("你拿到的牌是:"); Enumeration RLKey = htMember.keys(); while (RLKey.hasMoreElements()) { String Key = RLKey.nextElement().toString();// 取HashTable中的关键字词 System.out.print((String) htMember.get(Key) + ","); } } public static void main(String[] args) { String[] cards = { "A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K" }; String[] kinds = { "黑桃", "红桃", "梅花", "方块" }; Cards cardList = new Cards(); String suit;// 当前选中牌的类型 String face;// 当前选中牌 int randomCardNum = 52;// 当前随机取牌的个数,记住不能大于全部牌52张 while (true) { suit = kinds[Math.round((float) Math.random() * (kinds.length - 1))]; face = cards[Math.round((float) Math.random() * (cards.length - 1))]; cardList.put(suit + face); if (cardList.htMember.size() >= randomCardNum && cardList.htMember.size() <= 52) { break; } } cardList.get(); } }

老薛主机入门建站月付34/月,年付345元,半价香港VPS主机

老薛主机怎么样?老薛主机这个商家有存在有一些年头。如果没有记错的话,早年老薛主机是做虚拟主机业务的,还算不错在异常激烈的市场中生存到现在,应该算是在众多商家中早期积累到一定的用户群的,主打小众个人网站业务所以能持续到现在。这不,站长看到商家有在进行夏季促销,比如我们很多网友可能有需要的香港vps主机季度及以上可以半价优惠,如果有在选择不同主机商的香港机房的可以看看老薛主机商家的香港vps。点击进入...

Spinservers美国圣何塞服务器$111/月流量10TB

Spinservers是Majestic Hosting Solutions,LLC旗下站点,主营美国独立服务器租用和Hybrid Dedicated等,数据中心位于美国德克萨斯州达拉斯和加利福尼亚圣何塞机房。TheServerStore.com,自 1994 年以来,它是一家成熟的企业 IT 设备供应商,专门从事二手服务器和工作站业务,在德克萨斯州拥有 40,000 平方英尺的仓库,库存中始终有...

gcorelabs:美国GPU服务器,8张RTX2080Ti,2*Silver-4214/256G内存/1T SSD/

gcorelabs提供美国阿什本数据中心的GPU服务器(显卡服务器),默认给8路RTX2080Ti,服务器网卡支持2*10Gbps(ANX),CPU为双路Silver-4214(24核48线程),256G内存,1Gbps独享带宽仅需150欧元、10bps带宽仅需600欧元,不限流量随便跑吧。 官方网站 :https://gcorelabs.com/hosting/dedicated/gpu/ ...

洗牌算法为你推荐
settimervc++6.0 settimer函数是怎么用的啊,能给个例子在讲解一下行么郭凡生馬云的簡介3Q电子日历我想做个项目 如何在电子日历中进行时间的选择slideshare如何通过slideshare扩充LinkedIn人脉tvosTVOS智能电视操作系统如何越狱jdk6我是win7的系统,安装了JDK6,环境配置都正确了。但是安装完没有应用程序啊~spawningVC中Error spawning cl.exe错误的解决方法.php论坛用php写一个论坛,重点是什么?还有具体的功能,谢谢民生电商民生电商与传统的电商有什么区别?微信论坛手机微信论坛如何实现
网址域名注册 网通vps ddos godaddy优惠码 流媒体服务器 免费ddos防火墙 我爱水煮鱼 如何用qq邮箱发邮件 酷番云 789电视剧 申请免费空间和域名 优酷黄金会员账号共享 七夕快乐英语 空间购买 789 韩国代理ip 谷歌台湾 如何登陆阿里云邮箱 godaddy空间 阿里云个人邮箱 更多