PHP使用什么排序算法?

2022-08-30 12:54:06

从内部来说,PHP使用哪种算法来实现它提供的各种排序功能?似乎usort变体可能使用与内置排序不同的算法,但我想知道。

在哪里可以找到这些信息?

谢谢!


答案 1

您可以通过查看php手册找到信息。http://php.net/sort 说PHP使用Quicksort的实现。如果做不到这一点,你总是可以浏览PHP源代码本身。


答案 2

对于排序,PHP使用可以在Zend /zend_sort.c中找到的快速排序的实现,它采用比较函数和元素数组。的默认比较函数在 ext/standard/array.c 中定义,称为 。所以基本上,对于所有排序函数,它都是相同的算法,除了它们采用不同的比较函数。sort()php_array_data_compare()


推荐