MATLAB Function Reference |

Sort elements in ascending order

**Syntax**

**Description**

```
B = sort(A)
```

sorts the elements along different dimensions of an array, and arranges those elements in ascending order.

Real, complex, and string elements are permitted. For elements of A with identical values, the order of these elements is preserved in the sorted list. When `A`

is complex, the elements are sorted by magnitude, i.e., `abs(A)`

, and where magnitudes are equal, further sorted by phase angle, i.e., `angle(A)`

, on the interval . If `A`

includes any `NaN`

elements, `sort`

places these at the end.

```
B = sort(A,dim)
```

sorts the elements along the dimension of `A`

specified by a scalar `dim`

. If `dim`

is a vector, `sort `

works iteratively on the specified dimensions. Thus, `sort(A,[1 2])`

is equivalent to `sort(sort(A,2),1)`

.

```
[B,IX] = sort(A,...)
```

also returns an array of indices `IX`

, where` size(IX) == size(A)`

. If `A`

is a vector, `B = A(IX)`

. If `A`

is an `m`

-by-`n`

matrix, then each column of `IX`

is a permutation vector of the corresponding column of `A`

, such that

If `A`

has repeated elements of equal value, the returned indices preserve the original ordering.

**Examples**

This example sorts a matrix `A`

in each dimension, and then sorts it a third time, requesting an array of indices for the sorted result.

A = [ 3 7 5 0 4 2 ]; sort(A,1) ans = 0 4 2 3 7 5 sort(A,2) ans = 3 5 7 0 2 4 [B,IX] = sort(A,2) B = 3 5 7 0 2 4 IX = 1 3 2 1 3 2

**See Also**

`max`

, `mean`

, `median`

, `min`

, `sortrows`

smooth3 | sortrows |