资讯专栏INFORMATION COLUMN

Java洗牌实现

diabloneo / 1417人阅读

import java.util.*;

public class LatteryDrawing{
    public static void main(String[] args){
        Scanner scanner = new Scanner(System.in);
        System.out.println("The number of you draw:");

        int number = scanner.nextInt();

        int[] numbers = new int[number];
        for(int i = 0;i < number;i ++){
            numbers[i] = i + 1;
        }
        System.out.println(Arrays.toString(numbers));
        
        int arrayLength = numbers.length;
        int randomIndex = numbers.length;
        
        int[] results = new int[arrayLength];
        
        while(randomIndex > 0){
            int r = (int)(Math.random() * randomIndex);
            results[arrayLength - randomIndex] = numbers[r];
            numbers[r] = numbers[randomIndex - 1];
            randomIndex --;
        }

        System.out.println(Arrays.toString(results));

        Arrays.sort(results);
        System.out.println(Arrays.toString(results));
    }
}

欢迎加入学习交流群569772982,大家一起学习交流。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/67985.html

相关文章

  • 1、Map接口 2、模拟斗地主洗牌发牌

    摘要:中的集合称为单列集合,中的集合称为双列集合。洗牌通过数字完成洗牌发牌发牌将每个人以及底牌设计为将最后张牌直接存放于底牌,剩余牌通过对取模依次发牌。存放的过程中要求数字大小与斗地主规则的大小对应。 01Map集合概述 A:Map集合概述: 我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它们存储数据的形式不同  a:Collection中的集...

    付伦 评论0 收藏0
  • Java编程基础19——Map集合&斗地主案例

    摘要:使用默认随机源对指定列表进行置换。将集合排序使用二分搜索法搜索指定列表,以获得指定对象根据元素的自然顺序,返回给定的最大元素。 1_Map集合概述和特点 A:Map接口概述 查看API可以知道: 将键映射到值的对象 一个映射不能包含重复的键 每个键最多只能映射到一个值 B:Map接口和Collection接口的不同 Map是双列的,Collection是单列的 Map...

    ygyooo 评论0 收藏0
  • js 数组随机数 数组洗牌

    摘要:首先通过数组调用是令系统随机选取大于等于且小于的伪随机值进入到函数后分别定义了变量和变量为当前数组的长度,先声明,以便在下面中使用。循环一圈后就形成了对数组的洗牌。 这次分享一个随机数组洗牌的一个算法,让你得到随机数组。 假如1个数组的值是这样的: const arr = [a, b, c, d, e, f, g]; 因为在实践操作中,在网上搜可以搜到一大堆随机的这些代码。但是实际上究...

    jay_tian 评论0 收藏0
  • python:面向对象基本知识(二)用类方法实现斗地主洗牌发牌

    摘要:斗地主牌堆,张牌,四种花色,,大小王洗牌发牌黑桃方片梅花红桃大王小王洗牌发牌展示玩家玩家玩家底牌 斗地主 1.牌堆,54张牌,四种花色,2,3,4,5,6,7,8,9,10,J,Q,K,A,大小王 2.洗牌 3.发牌 import random class Poke(): flowr=[黑桃,方片,梅花,红桃] num=[2,3,4,...

    Yu_Huang 评论0 收藏0

发表评论

0条评论

diabloneo

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<