洗牌算法关于洗牌算法,请用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(); } }

腾讯云爆款秒杀:1C2G5M服务器38元/年,CDN流量包6元起

农历春节将至,腾讯云开启了热门爆款云产品首单特惠秒杀活动,上海/北京/广州1核2G云服务器首年仅38元起,上架了新的首单优惠活动,每天三场秒杀,长期有效,其中轻量应用服务器2G内存5M带宽仅需年费38元起,其他产品比如CDN流量包、短信包、MySQL、直播流量包、标准存储等等产品也参与活动,腾讯云官网已注册且完成实名认证的国内站用户均可参与。活动页面:https://cloud.tencent.c...

ZoeCloud:香港BGP云服务器,1GB内存/20GB SSD空间/2TB流量/500Mbps/KVM,32元/月

zoecloud怎么样?zoecloud是一家国人商家,5月成立,暂时主要提供香港BGP KVM VPS,线路为AS41378,并有首发永久8折优惠:HKBGP20OFF。目前,解锁香港区 Netflix、Youtube Premium ,但不保证一直解锁,谢绝以不是原生 IP 理由退款。不保证中国大陆连接速度,建议移动中转使用,配合广州移动食用效果更佳。点击进入:zoecloud官方网站地址zo...

UCloud 618活动:香港云服务器月付13元起;最高可购3年,AMD/Intel系列

ucloud6.18推出全球大促活动,针对新老用户(个人/企业)提供云服务器促销产品,其中最低配快杰云服务器月付5元起,中国香港快杰型云服务器月付13元起,最高可购3年,有AMD/Intel系列。当然这都是针对新用户的优惠。注意,UCloud全球有31个数据中心,29条专线,覆盖五大洲,基本上你想要的都能找到。注意:以上ucloud 618优惠都是新用户专享,老用户就随便看看!点击进入:uclou...

洗牌算法为你推荐
网关和路由器的区别网关和路由器的区别和联系在备忘录模式Java中常用的设计模式有哪些?请详细说明一下工厂模式。备忘录模式手机如何设置备忘录提醒备忘录模式为什么我的华为手机界面总是有个框框在备忘录上面微信论坛手机微信论坛如何实现mediasres什么意思暴力破解密码用什么方法才能破解别人密码丁香园网站丁香园主网站用的是什么程序??谁能看的出来??国外社交网站有什么外国的交友网站?拜托各位大神alphablend请教函数TransparentBlt的用法
主机域名 三级域名网站 金万维动态域名 服务器配置技术网 大硬盘 5折 asp.net主机 diahosting 老左博客 太原联通测速平台 宁波服务器 双线主机 双十一秒杀 常州联通宽带 华为云盘 主机管理系统 卡巴斯基试用版下载 hostease 电信主机托管 国外免费网盘 更多