admin管理员组文章数量:1516870
头条面试题:52张去掉大小王扑克牌平均分给4人,每人13张牌,要求随机分配
本道题难点为随机分配,要做到随机,就必须进行洗牌,本题我们采用随机数进行洗牌,先将52张扑克牌放入数组中,产生0-51的随机数,将随机数索引处的牌与当前遍历索引的牌进行交换来进行洗牌,最后将牌发给4人,最后呈上代码:
public static void main(String[] args) {String[] Pukepai=new String[52];String[] type={"黑","红","梅","方"};Random ran=new Random();int index=0;//将52张牌放入数组中for(String s:type){for(int i=1;i<14;i++){Pukepai[index++]=s+i;}}//洗牌,j将产生随机数的索引与遍历索引的数字做交换,进行洗牌for(int i=0;i<52;i++){int ranindex=ran.nextInt(52);String str=Pukepai[i];Pukepai[i]=Pukepai[ranindex];Pukepai[ranindex]=str;}//将扑克牌分给4人,每人为数组中的一列String[][] result=new String[4][13];for(int i=0;i<52;i++){result[i/13][i%13]=Pukepai[i];}//分别输出没人分得的排,中间用******隔开for(String[] ROW:result){for(String COL:ROW){System.out.println(COL);}System.out.println("***********");}}
本文标签: 头条面试题52张去掉大小王扑克牌平均分给4人,每人13张牌,要求随机分配
版权声明:本文标题:头条面试题:52张去掉大小王扑克牌平均分给4人,每人13张牌,要求随机分配 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.betaflare.com/biancheng/1709615861a759171.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。


发表评论