天天看點

java有序 不重複對_java 中的經典算法 如何将有序資料打散,以及在數組中取資料如何做到結果不重複。 | 學步園...

java 中關于将資料排序的

當然算法不是很難,在這裡我隻是想跟大家交流一下java語言的基本運用。

代碼如下:相信有java基礎的人都能夠了解這樣的算法:

import java.util.Arrays;

import java.util.Random;

import java.util.Scanner;

public class Test {

public static void main(String[] args) {

int[] num=new int[100];//定義一個數組用于以下操作

for(int i=0;i

num[i]=i+1;

}//擷取15個連續資料

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

Random random=new Random();

int index;

for(int i=num.length-1;i>=0;i--){

index=random.nextInt(num.length);

int temp=num[i];

num[i]=num[index];

num[index]=temp;

}

System.out.println(Arrays.toString(num));//顯示将數組打散後的結果

boolean[] bool=new boolean[num.length];

while(true){

System.out.println("輸入你要抽取的任意個數字0~99:");

Scanner scan=new Scanner(System.in);

int sca=scan.nextInt();

int[] number=new int[sca];

for(int i=0;i

index=random.nextInt(num.length);

if(bool[index]){

continue;

}

number[i]=num[index];

bool[index]=true;

}

Arrays.sort(number);//将随機取出的資料進行排序

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

//是否退出循環由使用者自己設定,暫不贅述

}

}

}

備注:寫這些代碼主要是個人覺得還是蠻有用的,是以貼在這裡。我是java新手,謝謝支援。