qsort()使用哪种排序算法?

kBi*_*sla -3 c sorting optimization qsort

请问功能qsort()stdlib.h实际使用快速排序算法,顾名思义?

Jon*_*ler 6

qsort()函数可以使用库实现者选择的任何排序算法来实现,但是名称表明算法应该接近最优.使用O(N 2)算法是允许的,但是主要的QoI(实施质量)问题.

值得注意的是,qsort()界面的比较相当昂贵; 增加比较次数以减少移动次数的任何排序算法(如果你不改变指针也会很昂贵)可能会导致性能下降.但是,这是图书馆实施者需要关注的问题.除非你发现库的实现很糟糕(这些日子不太可能),所以使用它并不用担心.

C++ sort算法可以在C周围运行环qsort.