Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main
- import (
- "fmt"
- "math/rand"
- "sort"
- "time"
- )
- func main() {
- fmt.Println("Starting")
- const x = 1000000
- const y = x * 10
- var s [y]float64
- s1 := rand.NewSource(time.Now().UnixNano())
- r1 := rand.New(s1)
- start1 := time.Now()
- for i := 0; i < y; i++ {
- s[i] = r1.Float64()
- }
- end1 := time.Since(start1)
- ss := s[:]
- start2 := time.Now()
- sort.Float64s(ss)
- end2 := time.Since(start2)
- fmt.Println(end1)
- fmt.Println(end2)
- fmt.Println("Number: ", ss[x])
- }
- Starting
- 136.6331ms // The time taken to generate 10,000,000 random numbers
- 3.456781s // The time taken to sort the 10,000,000 random numbers
- Number: 0.10000285497001288
- import java.util.*;
- class RSTest {
- public static void main(String[] args) {
- System.out.println("Starting");
- int x = 1000000;
- int y = x * 10;
- Random gen = new Random(System.currentTimeMillis());
- double[] s = new double[y];
- long start1 = System.nanoTime();
- for (int i = 0; i < y; i++) {
- s[i] = gen.nextDouble();
- }
- long end1 = System.nanoTime();
- long start2 = System.nanoTime();
- Arrays.sort(s);
- long end2 = System.nanoTime();
- System.out.println((end1 - start1) / (1000000000.0));
- System.out.println((end2 - start2) / (1000000000.0));
- System.out.println(s[x]);
- }
- }
- Starting
- 0.2252634 // The time taken to generate 10,000,000 random numbers
- 1.0303157 // The time taken to sort the 10,000,000 random numbers
- 0.0999513608326642
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement