2016 Update
This commit is contained in:
parent
948b86eafa
commit
dcf5d15da3
7965 changed files with 139854 additions and 31002 deletions
|
|
@ -0,0 +1,23 @@
|
|||
import java.util.stream.IntStream;
|
||||
import static java.util.stream.IntStream.iterate;
|
||||
|
||||
public class LinearCongruentialGenerator {
|
||||
final static int mask = (1 << 31) - 1;
|
||||
|
||||
public static void main(String[] args) {
|
||||
System.out.println("BSD:");
|
||||
randBSD(0).limit(10).forEach(System.out::println);
|
||||
|
||||
System.out.println("\nMS:");
|
||||
randMS(0).limit(10).forEach(System.out::println);
|
||||
}
|
||||
|
||||
static IntStream randBSD(int seed) {
|
||||
return iterate(seed, s -> (s * 1_103_515_245 + 12_345) & mask).skip(1);
|
||||
}
|
||||
|
||||
static IntStream randMS(int seed) {
|
||||
return iterate(seed, s -> (s * 214_013 + 2_531_011) & mask).skip(1)
|
||||
.map(i -> i >> 16);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue