数组排序的函数因编程语言不同而存在差异,常见编程语言中都有内置的排序函数,以下是主流语言的典型实现:一、JavaScript1. `Array.prototype.sort()`:是JavaScript数组的原生排序方法,默认将元素转换为字符串并按Unicode码点排序,可通过回调函数自定义排序规则,例如:• 数字升序:`arr.sort((a, b) => a - b)`• 数字降序:`arr.sort((a, b) => b - a)`二、Python1. `list.sort()`:对原列表进行原地排序(无返回值),支持`reverse`参数(默认`False`升序,`True`降序),并可通过`key`指定排序键,例如:• 基础排序:`lst.sort()`• 自定义键排序:`lst.sort(key=lambda x: x[1])`(按列表元素的第二个值排序)2. `sorted()`:返回新的排序后的列表,不修改原列表,参数与`list.sort()`一致,例如:`sorted_lst = sorted(lst, reverse=True)`三、Java1. `Arrays.sort()`:针对数组的排序方法,支持基本类型数组(如`int[]`)和对象数组,对象数组需实现`Comparable`接口或传入`Comparator`,例如:• 基本类型数组:`int[] arr = {3, 1, 5}; Arrays.sort(arr);`• 对象数组自定义排序:`Arrays.sort(strArr, (a, b) -> b.length() - a.length());`(按字符串长度降序)四、C++1. `std::sort()`:位于`<algorithm>`头文件,默认升序排序,可通过自定义比较器改变顺序,例如:• 基础排序:`std::vector<int> v = {3, 1, 4}; std::sort(v.begin(), v.end());`• 降序排序:`std::sort(v.begin(), v.end(), std::greater<int>());`五、PHP1. `sort()`:对数组升序排序(修改原数组),`rsort()`为降序;2. `usort()`:通过用户自定义函数排序,例如:`usort($arr, function($a, $b) { return $a['age'] - $b['age']; });`(按年龄升序)这些函数的核心逻辑多基于快速排序(如Java、C++)、归并排序(如Python的`sorted()`)或Timsort(Python3.2+)等高效排序算法,时间复杂度通常为O(n log n)。