ALGORITHM/문제해결
[JAVA] 임의의 섞기 ( Math.random() )
안낭우훗
2018. 8. 13. 06:35
/*문제: 30
1) 0에서 19까지 정수가 저장된 배열의 수를 임의로 섞어라.
int[] numbers = {0, ..., 19}
2) 출력 예:
17 2 1 19 5 ...
3) 숫자를 섞기 위해 임의로 인덱스를 뽑아내기
Math.random() * 20
*/
class Test{
public static void main(String[] args) throws Exception {
int[] numbers = new int[20];
for (int i = 0; i <= 19; i++) {
numbers[i] = i;
}
int index1, index2, temp;
for (int i = 0; i < numbers.length; i++) {
index1 = (int)(Math.random() * 20);
index2 = (int)(Math.random() * 20);
temp = numbers[index1];
numbers[index1] = numbers[index2];
numbers[index2] = temp;
}
for (int i : numbers) {
System.out.printf("%d \n", i);
}
}
}