You can also sort data via binary search trees (I believe it takes O(nlog(n)) time, but the actually implementation is somewhat slower than quicksort)