progs/re-internal.scala
changeset 93 4794759139ea
parent 92 e85600529ca5
equal deleted inserted replaced
92:e85600529ca5 93:4794759139ea
       
     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