fork download
  1. fun main(args: Array<String>) {
  2. val a = listOf(3, 5, 2, 3, 6, 1)
  3. println(quicksort(a))
  4. }
  5.  
  6. fun <T: Comparable<T>> quicksort(items: List<T>): List<T>{
  7. if (items.isEmpty()) return emptyList()
  8. val pivot = items[0]
  9. val equal = items.filter { it == pivot }
  10. val less = items.filter { it < pivot }
  11. val greater = items.filter { it > pivot }
  12. return quicksort(less) + equal + quicksort(greater)
  13. }
Success #stdin #stdout 0.07s 28020KB
stdin
Standard input is empty
stdout
[1, 2, 3, 3, 5, 6]