14
|
1 package jp.ac.u_ryukyu.ie.cr.tatsuki.xml;
|
|
2
|
|
3 import java.io.BufferedWriter;
|
|
4 import java.io.File;
|
|
5 import java.io.FileWriter;
|
|
6 import java.io.IOException;
|
|
7 import java.io.PrintWriter;
|
18
|
8 import java.util.Random;
|
14
|
9
|
|
10 import fj.Ord;
|
17
|
11 import fj.data.Option;
|
14
|
12 import fj.data.TreeMap;
|
|
13
|
|
14 public class FJTreeMapSetTime {
|
17
|
15
|
14
|
16 public static void main(String args[]) throws IOException {
|
17
|
17 System.out.println("putaaa");
|
|
18 File putFile = new File("./time/fjPut");
|
|
19 PrintWriter putPw = new PrintWriter(new BufferedWriter(new FileWriter(putFile)));
|
|
20 File getFile = new File("./time/fjGet");
|
|
21 PrintWriter getPw = new PrintWriter(new BufferedWriter(new FileWriter(getFile)));
|
14
|
22 TreeMap<Integer, Integer> map = TreeMap.empty(Ord.intOrd);
|
|
23 long t1 = 0;
|
|
24 long t2 = 0;
|
17
|
25 long t3 = 0;
|
|
26 long t4 = 0;
|
14
|
27 for (int count = 0; count <= 30000; count++) {
|
|
28 t1 = System.currentTimeMillis();
|
|
29 map = map.set(count, count);
|
|
30 t2 = System.currentTimeMillis();
|
18
|
31 if (count % 100 == 0 && count != 0) {
|
14
|
32 System.out.println("put time " + count + " " + (t2 - t1));
|
18
|
33 long sum = 0;
|
|
34 for (int count1 = 0; count1 < 20; count1++) {
|
|
35 Random ran = new Random();
|
|
36 int getValue = ran.nextInt(count);
|
|
37 t3 = System.currentTimeMillis();
|
|
38 Option<Integer> op = map.get(getValue);
|
|
39 t4 = System.currentTimeMillis();
|
|
40 sum = sum + (t4 - t3);
|
|
41 }
|
|
42 System.out.println("get time = " + (sum / 20));
|
17
|
43 putPw.println(count + " " + (t2 - t1));
|
18
|
44 getPw.println(count + " " + (sum / 20));
|
14
|
45 }
|
|
46 }
|
17
|
47 putPw.close();
|
|
48 getPw.close();
|
14
|
49 }
|
18
|
50
|
14
|
51 }
|
18
|
52
|
|
53
|