如何自定义Java中的shuffle函数

1949idc 2年前 (2024-09-19) 阅读数 372 #编程语言

在Java中,要实现一个自定义的shuffle函数,你可以使用Fisher-Yates洗牌算法

import java.util.Random;

public class CustomShuffle {
    public static void main(String[] args) {
        int[] array = {1, 2, 3, 4, 5, 6, 7, 8, 9};
        System.out.println("Before shuffling:");
        printArray(array);

        shuffle(array);
        System.out.println("\nAfter shuffling:");
        printArray(array);
    }

    public static void shuffle(int[] array) {
        Random random = new Random();
        for (int i = array.length - 1; i > 0; i--) {
            int index = random.nextInt(i + 1);
            // Swap array[i] and array[index]
            int temp = array[i];
            array[i] = array[index];
            array[index] = temp;
        }
    }

    public static void printArray(int[] array) {
        for (int value : array) {
            System.out.print(value + " ");
        }
    }
}

这个示例中的shuffle方法接受一个整数数组作为参数。通过使用Fisher-Yates算法,我们遍历数组并随机交换元素,从而实现数组的随机排序。printArray方法用于打印数组的内容。

你可以根据需要修改此代码,以便处理其他类型的数组,例如float[]double[]String[]等。只需将数组类型更改为所需的类型,并相应地调整shuffleprintArray方法。

版权声明

本文内容由互联网用户自发贡献,该文观点仅代表作者本人
本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

© 2010 首途云安 & 厦门硕顿信息技术有限公司 & 闽ICP备11016866号  增值电信业务经营许可证:B1-20203020 地址:福建厦门思明区嘉禾路297号1806
高新技术企业
软件产品证书
计算机软件著作权
ISO认证
国家3A企业