189 8069 5689

java随机数排序的代码 Java随机排序

java随机产生0~100的10个数,对这10个数排序

import java.util.Arrays;

蓝山网站建设公司创新互联,蓝山网站设计制作,有大型网站制作公司丰富经验。已为蓝山数千家提供企业网站建设服务。企业网站搭建\外贸营销网站建设要多少钱,请找那个售后服务好的蓝山做网站的公司定做!

import java.util.Random;

import java.util.Scanner;

public class TestTest {

public static void main(String[] args) {

int arr[] = new int[11];

Random r=new Random();

for(int i=0;i10;i++){

arr[i]=r.nextInt(100)+1;//得到10个100以内的整数

}

Arrays.sort(arr);

for(int i=0;iarr.length;i++){

System.out.print(arr[i]+"\t");

}

System.out.print("\nPlease Input a int number: ");

Scanner sc=new Scanner(System.in);

arr[10]=sc.nextInt();//输入一个int值

Arrays.sort(arr);

for(int i=0;iarr.length;i++){

System.out.print(arr[i]+"\t");

}

}

}

上面写的太复杂了。。。

给你写个简单易懂的。。

已经实现了LZ所要的功能。。

明了。。祝你好运哈!!

Java小程序(生成20个不同的随机数+排序)

package fxw.xjtu.edu;

import java.util.Iterator;

import java.util.Random;

import java.util.TreeSet;

public class TestTreeSet {

public static void main(String[] args) {

System.out.println("产生20个随即数:");

TreeSetInteger ts = new TreeSetInteger();

for(int i=0;i20;i++){

int a = new Random().nextInt();

System.out.println(a);

ts.add(a);

}

System.out.println("排序后的输出为:");

IteratorInteger i = ts.iterator();

while(i.hasNext()){

System.out.println(i.next());

}

}

}

用TreeSet存储产生的随机数,存完之后就已经排好序了。

1到 n 随机排序 java

思路有两个

1、利用Random.nextInt(n)得到处于0~n-1的随机数,加1后并按顺序放入数组。放入之前需要先判断数组中是否已经有了该数。

2、先初始化数组a[n],存放1~n的整数,然后交换任意两个位置的数任意次数,这也能得到随机。交换次数定多少,这个我没法确定。

我把第一种方法代码贴出来

static Random r = new Random();

@Test

public void test() {

printArray(getArray(20));

}

public void printArray(int[] a) {

StringBuffer sb = new StringBuffer();

for (int i = 0; i a.length; i++) {

sb.append(a[i] + " , ");

}

System.out.print(sb.toString());

}

public int[] getArray(int n) {

int[] a = new int[n];

while ((n--) 0) {

int temp = this.getNum(a.length);

while (true n = 0) {

if (check(temp, a)) {

temp = this.getNum(a.length);

} else {

a[n] = temp;

break;

}

}

}

return a;

}

public boolean check(int t, int[] a) {

boolean flag = false;

for (int i = 0; i a.length; i++) {

if (t == a[i]) {

flag = true;

break;

}

}

return flag;

}

public int getNum(int n) {

return r.nextInt(n)+1;

}

注释我就不加了,你应该看得懂

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随机排序
分享URL:http://cdxtjz.cn/article/hpeojo.html

其他资讯