各种排序方法的对比。

最近闲来无事,研究下各种排序算法,看看哪个更快。只考虑时间,不考虑空间


10000数据
冒泡排序: 0s 220ms
希尔排序: 0s 3ms
快速排序: 0s 2ms
堆排序: 0s 181ms
插入排序: 0s 95ms
归并排序: 0s 111ms
基数排序: 0s 71ms
选择排序: 0s 176ms
JAVA排序: 0s 2ms


100000数据
冒泡排序: 24s 853ms
希尔排序: 0s 20ms
快速排序: 0s 11ms
堆排序: 21s 168ms
插入排序: 9s 330ms
归并排序: 8s 776ms
基数排序: 2s 792ms
选择排序: 18s 132ms
JAVA排序: 0s 14ms


1000000数据
希尔排序: 0s 324ms
快速排序: 0s 117ms
JAVA排序: 0s 145ms

10000000数据
希尔排序: 5s 444ms
快速排序: 1s 332ms
JAVA排序: 1s 482ms

再大的数据量就没试验了,再加一个0,由于eclipse 设置的问题吧,程序直接就内存溢出了。

目前来看,还是快速排序最快,由于java Arrays.sort 其实使用的也是快速排序。所以和标准快速排序时间消耗类似。

找找看,如果不考虑空间占用的情况下,哪种最快。

你可能感兴趣的:(各种排序方法的对比。)