forked from data-apis/array-api
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsorting_functions.py
45 lines (38 loc) · 2.24 KB
/
sorting_functions.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
from ._types import array
def argsort(x: array, /, *, axis: int = -1, descending: bool = False, stable: bool = True) -> array:
"""
Returns the indices that sort an array ``x`` along a specified axis.
Parameters
----------
x : array
input array.
axis: int
axis along which to sort. If set to ``-1``, the function must sort along the last axis. Default: ``-1``.
descending: bool
sort order. If ``True``, the returned indices sort ``x`` in descending order (by value). If ``False``, the returned indices sort ``x`` in ascending order (by value). Default: ``False``.
stable: bool
sort stability. If ``True``, the returned indices must maintain the relative order of ``x`` values which compare as equal. If ``False``, the returned indices may or may not maintain the relative order of ``x`` values which compare as equal (i.e., the relative order of ``x`` values which compare as equal is implementation-dependent). Default: ``True``.
Returns
-------
out : array
an array of indices. The returned array must have the same shape as ``x``. The returned array must have the default array index data type.
"""
def sort(x: array, /, *, axis: int = -1, descending: bool = False, stable: bool = True) -> array:
"""
Returns a sorted copy of an input array ``x``.
Parameters
----------
x: array
input array.
axis: int
axis along which to sort. If set to ``-1``, the function must sort along the last axis. Default: ``-1``.
descending: bool
sort order. If ``True``, the array must be sorted in descending order (by value). If ``False``, the array must be sorted in ascending order (by value). Default: ``False``.
stable: bool
sort stability. If ``True``, the returned array must maintain the relative order of ``x`` values which compare as equal. If ``False``, the returned array may or may not maintain the relative order of ``x`` values which compare as equal (i.e., the relative order of ``x`` values which compare as equal is implementation-dependent). Default: ``True``.
Returns
-------
out : array
a sorted array. The returned array must have the same data type and shape as ``x``.
"""
__all__ = ['argsort', 'sort']