Advertisement
AlexTyl

Untitled

Sep 26th, 2019
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Kotlin 1.92 KB | None | 0 0
  1. fun main(args: Array<String>) {
  2.     val hashSet = HashSet<Int>()
  3.     val treeSet = TreeSet<Int>()
  4.    
  5.     var timeStart = 0L
  6.     var timeEnd = 0L
  7.  
  8.     timeStart = System.currentTimeMillis()
  9.     for (i in 0..300_000_000) {
  10.         hashSet.add(i % 300_000)
  11.     }
  12.     timeEnd = System.currentTimeMillis()
  13.     println("HASH ADD: ${(timeEnd - timeStart) / 1000f} sec.")
  14.  
  15.     timeStart = System.currentTimeMillis()
  16.     for (i in 0..300_000_000) {
  17.         hashSet.contains(i % 300_000)
  18.     }
  19.     timeEnd = System.currentTimeMillis()
  20.     println("HASH FIND: ${(timeEnd - timeStart) / 1000f} sec.")
  21.  
  22.     timeStart = System.currentTimeMillis()
  23.     for (i in 3_000..200_000_000)
  24.         hashSet.contains(i)
  25.     timeEnd = System.currentTimeMillis()
  26.     println("HASH FIND RANGE: ${(timeEnd - timeStart) / 1000f} sec.")
  27.  
  28.     timeStart = System.currentTimeMillis()
  29.     for (i in 0..300_000_000) {
  30.         hashSet.remove(i % 300_000)
  31.     }
  32.     timeEnd = System.currentTimeMillis()
  33.     println("HASH DELETE: ${(timeEnd - timeStart) / 1000f} sec.")
  34.  
  35.    
  36.     timeStart = System.currentTimeMillis()
  37.     for (i in 0..300_000_000) {
  38.         treeSet.add(i % 300_000)
  39.     }
  40.     timeEnd = System.currentTimeMillis()
  41.     println("TREE ADD: ${(timeEnd - timeStart) / 1000f} sec.")
  42.  
  43.     timeStart = System.currentTimeMillis()
  44.     for (i in 0..300_000_000) {
  45.         treeSet.contains(i % 300_000)
  46.     }
  47.     timeEnd = System.currentTimeMillis()
  48.     println("TREE FIND: ${(timeEnd - timeStart) / 1000f} sec.")
  49.  
  50.     timeStart = System.currentTimeMillis()
  51.     treeSet.subSet(3_000, 200_000_000)
  52.     timeEnd = System.currentTimeMillis()
  53.     println("TREE FIND RANGE: ${(timeEnd - timeStart) / 1000f} sec.")
  54.  
  55.     timeStart = System.currentTimeMillis()
  56.     for (i in 0..300_000_000) {
  57.         treeSet.remove(i % 300_000)
  58.     }
  59.     timeEnd = System.currentTimeMillis()
  60.     println("TREE DELETE: ${(timeEnd - timeStart) / 1000f} sec.")
  61.    
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement