排序算法有很多,效率都不错,有现成的就用现成的。
可是用的时候发现C++STL库中list容器的sort速度特别慢,不知道怎么回事。
例子代码如下:
int a[250000];
for(int i=0;i<250000;i++)
a[i] = rand();
list<int> la(a,a+250000);
这里,有两个对象,一个是整型数组a,一个是list链表la,存储的内容都是一样的。
如果对数组a使用C++的sort排序,即sort(a,a+250000),速度很快,1秒就够。
但如果使用la.sort(),速度相当慢,有10多秒(我是I7的CPU,14年5月份刚配的)
按理说,不应该啊。谁能解释一下,不胜感激!!