| author | Christian Urban <urbanc@in.tum.de> | 
| Wed, 04 Oct 2017 08:46:09 +0100 | |
| changeset 514 | eaaa2d4f36e9 | 
| parent 93 | 4794759139ea | 
| permissions | -rw-r--r-- | 
| 49 | 1  | 
|
2  | 
// measures the time a function needs  | 
|
3  | 
def time_needed[T](i: Int, code: => T) = {
 | 
|
4  | 
val start = System.nanoTime()  | 
|
5  | 
for (j <- 1 to i) code  | 
|
6  | 
val end = System.nanoTime()  | 
|
7  | 
(end - start)/(i * 1.0e9)  | 
|
8  | 
}  | 
|
9  | 
||
10  | 
||
11  | 
for (i <- 1 to 10001 by 300) {
 | 
|
12  | 
  val re = ("((a?){" + i + "})(a{" + i + "})")
 | 
|
13  | 
  println(i + " " + "%.5f".format(time_needed(1, ("a" * i).matches(re))))  
 | 
|
14  | 
}  | 
|
15  | 
||
16  | 
||
17  |