2016-08-23 09:33:05 -06:00
|
|
|
// arrays/ParallelPrefix1.java
|
2016-12-30 17:23:13 -08:00
|
|
|
// (c)2017 MindView LLC: see Copyright.txt
|
2016-01-25 18:05:55 -08:00
|
|
|
// We make no guarantees that this code is fit for any purpose.
|
2016-09-23 13:23:35 -06:00
|
|
|
// Visit http://OnJava8.com for more book information.
|
2016-01-25 18:05:55 -08:00
|
|
|
import java.util.*;
|
|
|
|
import onjava.*;
|
|
|
|
import static onjava.ArrayShow.*;
|
|
|
|
|
2016-08-23 09:33:05 -06:00
|
|
|
public class ParallelPrefix1 {
|
2016-01-25 18:05:55 -08:00
|
|
|
public static void main(String[] args) {
|
2016-11-21 12:37:57 -08:00
|
|
|
int[] nums = new Count.Pint().array(10);
|
2016-01-25 18:05:55 -08:00
|
|
|
show(nums);
|
|
|
|
System.out.println(Arrays.stream(nums)
|
|
|
|
.reduce(Integer::sum).getAsInt());
|
|
|
|
Arrays.parallelPrefix(nums, Integer::sum);
|
|
|
|
show(nums);
|
|
|
|
System.out.println(Arrays.stream(
|
2016-11-21 12:37:57 -08:00
|
|
|
new Count.Pint().array(6))
|
2016-01-25 18:05:55 -08:00
|
|
|
.reduce(Integer::sum).getAsInt());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/* Output:
|
|
|
|
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
|
|
|
|
45
|
|
|
|
[0, 1, 3, 6, 10, 15, 21, 28, 36, 45]
|
|
|
|
15
|
|
|
|
*/
|