int size = 1500;
int[] numbers = new int[size];
Random random = new Random();
IntStream.range(0, size).forEach(i -> numbers[i] = random.nextInt());
long start = System.nanoTime();
Arrays.sort(numbers);
System.out.println("serial sorting took " + (System.nanoTime() - start));
IntStream.range(0, size).forEach(i -> numbers[i] = random.nextInt());
start = System.nanoTime();
Arrays.parallelSort(numbers);
System.out.println("parallel sorting took " + (System.nanoTime() - start));
/* 실행결과 ex.
serial sorting took 1076792
parallel sorting took 614667
* */
/* parallelSort:
- 알고리즘의 효율은 같지만 여러 쓰레드로 분산해서 처리하기 때문에 조금 더 빠르게 정렬을 할 수 있다.
- CPU 같은 리소스나 정렬하는 배열의 크기에 따라서도 달라질 수 있다.
*/