「java数组随机排序」java中数组排序方法
今天给各位分享java数组随机排序的知识,其中也会对java中数组排序方法进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、java中怎么实现数组随机排序?谢谢
- 2、java中怎么把一个数组元素随机打乱顺序?
- 3、java:随机生成100个1000以内的整数存入数组并排序,然后输出最大的三个
- 4、java中对数组中的数据进行随机排序
java中怎么实现数组随机排序?谢谢
import java.util.*;
/*
* 生成不重复随机数的一种算法。
*/
public class Test
{
public static void main(String[] args)
{
// 要排序的一组数字
int[] seed = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
int len=seed.length;
int[] result= new int[len];
Random random = new Random();
for (int i = 0; i len; i++)
{
// 得到一个位置
int r = random.nextInt(len - i);
// 得到那个位置的数值
result[i] = seed[r];
// 将最后一个未用的数字放到这里
seed[r] = seed[len - 1 - i];
}
System.out.println("result:" + Arrays.toString(result));
}
}
java中怎么把一个数组元素随机打乱顺序?
晕.不用那么麻烦.
先转化为list(为什么不一开始就用List呢?)
例:
String[] arr = new String[] {"1", "2"};
List list = Arrays.asList(arr);
直接调用shuffle,就是随机排序
例:Collections.shuffle(list);
直接输出就是你想要的结果
java:随机生成100个1000以内的整数存入数组并排序,然后输出最大的三个
参考代码和详细注释如下
import java.util.Arrays;
public class Demo {
public static void main(String[] args) {
int numCount=100;//随机数个数
int maxValue=1000;//随机数的上限
int[] ary = new int[numCount];
for (int i = 0; i numCount; i++) {
ary[i] = (int)(Math.random()*maxValue);//随机数范围[0,999]
}
Arrays.sort(ary);//数组排序;从小到大
System.out.println("最大的三个数如下");
for (int i = 3; i 0; i--) {
System.out.println(ary[numCount-i]);//从数组最后面取3个,就是最大的3个数
}
}
}
java中对数组中的数据进行随机排序
对数组进行随机排序分为两种形式,一种是完全随机排序,一种是不完全随机排序,区别是完全随机对数组中原先任意的数据不会出现在原来的位置上,那么,一般来说,完全随机排序的需求会相对较大,我在此先给出完全随机方式,如果你需要不完全随机排序,可以再说:
举个例子:有一批数据,共n个,依次为a1,a2,a3,…,an-1,an,需要对它们进行完全随机排序。排序方法类似于直接选择,从左至右,即从ai+1~an中随机抽取一个数据与ai交换(1≤i≤n-1)。先排序第一个数据a1:从a2~an中随机抽出一个数据与a1交换;再排第二个数据a2:从a3~an中随机抽取一个数据与a2交换;再排第三个数据a3:从a4~an中随机抽取一个数据与a3交换;…;最后排第n-1个数据an-1:从an~an中随机抽取一个数据与an-1交换;第n个数据已不需要排序。这样,总共需要排n-1次。 从以上的算法分析中可以看出,每个待排序数据都会与其它数据交换位置,所以,每个数据都不会出现在原先的位置上,这是完全随机排序。
java数组随机排序的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java中数组排序方法、java数组随机排序的信息别忘了在本站进行查找喔。
发布于:2022-11-22,除非注明,否则均为
原创文章,转载请注明出处。