import scala.
annotation.
tailrec
val a
= System.
nanoTime() for(i
<-
1 to n
) sum1 +
= i
val b
= System.
nanoTime()
println(s"$sum1 , for loop time: ${b - a}")
val c
= System.
nanoTime() sum2 += i
i += 1
}
val d
= System.
nanoTime()
println(s"$sum1 , while loop time: ${d - c}")
val e
= System.
nanoTime() @tailrec
def rec
(sum
: Long, i
: Int
) : Long
= if(i
> n
) sum
else rec
(sum + i, i +
1)
val f
= System.
nanoTime() println(s"$sum3 , tailrec time: ${f - e}")
}
aW1wb3J0IHNjYWxhLmFubm90YXRpb24udGFpbHJlYwoKb2JqZWN0IE1haW4gZXh0ZW5kcyBBcHAgewoKIHZhbCBuID0gMTAwMDAwMAogCiB2YWwgYSA9IFN5c3RlbS5uYW5vVGltZSgpCiB2YXIgc3VtMSA9IDBMCiBmb3IoaSA8LSAxIHRvIG4pIHN1bTEgKz0gaQogdmFsIGIgPSBTeXN0ZW0ubmFub1RpbWUoKQogCiBwcmludGxuKHMiJHN1bTEgLCBmb3IgbG9vcCB0aW1lOiAke2IgLSBhfSIpCiAKIHZhbCBjID0gU3lzdGVtLm5hbm9UaW1lKCkKIHZhciBzdW0yID0gMEwKIHZhciBpID0gMQogd2hpbGUoaSA8PSBuKSB7CiAJc3VtMiArPSBpCiAJaSArPSAxCiB9CiB2YWwgZCA9IFN5c3RlbS5uYW5vVGltZSgpCiAKIHByaW50bG4ocyIkc3VtMSAsIHdoaWxlIGxvb3AgdGltZTogJHtkIC0gY30iKQogCiB2YWwgZSA9IFN5c3RlbS5uYW5vVGltZSgpCiBAdGFpbHJlYyBkZWYgcmVjKHN1bTogTG9uZywgaTogSW50KSA6IExvbmcgPQogICBpZihpID4gbikgc3VtIGVsc2UgcmVjKHN1bSArIGksIGkgKyAxKQogICAKIHZhbCBzdW0zID0gcmVjKDBMLCAxKSAgCiAKIHZhbCBmID0gU3lzdGVtLm5hbm9UaW1lKCkKIHByaW50bG4ocyIkc3VtMyAsIHRhaWxyZWMgdGltZTogJHtmIC0gZX0iKQoKfQ==