tyrion

HelloWorld.scala

Sep 4th, 2012
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scala 0.65 KB | None | 0 0
  1. object Quicksort {
  2.  
  3.   def main(args: Array[String]) {
  4.     println("Hello, Scala!")
  5.   }
  6.  
  7.   def sort(xs: Array[Int]) {
  8.     def swap(i: Int, j: Int) {
  9.       val t = xs(i)
  10.       xs(i) = xs(j)
  11.       xs(j) = t
  12.     }
  13.    
  14.     def quicksort(p: Int, r: Int) {
  15.       val pivot = xs((p + r) / 2)
  16.       var i = p
  17.       var j = r
  18.       while (i <= j) {
  19.         while (xs(i) < pivot) i += 1
  20.         while (xs(j) < pivot) j -= 1
  21.         if (i <= j) {
  22.           swap(i, j)
  23.           i += 1
  24.           j -= 1
  25.         }
  26.         if (p < j) quicksort(p, j)
  27.         if (j < r) quicksort(i, r)
  28.       }
  29.       quicksort(0, xs.length - 1)
  30.     }
  31.    
  32.   }
  33.  
  34. }
Advertisement
Add Comment
Please, Sign In to add comment