在 MATLAB 中,sort 函数是一个非常常用的函数,用于对数组进行排序。它可以根据指定的维度对数组进行排序,支持升序和降序排序。
✅ 一、基本语法
sorted = sort(A)
sorted = sort(A, 'descend') % 降序排序
sorted = sort(A, 'ascend') % 升序排序
sorted = sort(A, 'rows') % 按行排序
sorted = sort(A, 'columns') % 按列排序
✅ 二、参数说明
A:要排序的数组(可以是矩阵、向量、元胞数组等)。'ascend'或'descend':指定排序方向,默认是'ascend'。'rows'或'columns':指定按行或按列排序。- 默认是按列排序(
'columns')。
✅ 三、示例
示例 1:对一个向量排序
A = [3, 1, 4, 2];
sorted = sort(A)
输出:
sorted = 1×4
1
2
3
4
示例 2:对一个矩阵按行排序
A = [2 1 3; 4 5 6; 7 8 9];
sorted = sort(A, 'rows')
输出:
sorted = 3×3
7
4
2
8
5
1
9
6
3
示例 3:降序排序
A = [3 1 4 2];
sorted = sort(A, 'descend')
输出:
sorted = 1×4
4
3
2
1
✅ 四、注意事项
sort函数会返回一个与原数组大小相同的数组。- 如果
A是一个元胞数组,sort会按元胞内容进行排序,但不处理元胞内容本身。 - 如果
A是一个结构体数组,sort会按结构体的字段进行排序。
✅ 五、扩展用法
1. 按特定维度排序
A = [1 2; 3 4];
sorted = sort(A, 2) % 按列排序
输出:
sorted = 2×2
1
3
2
4
2. 按行排序('rows')
A = [1 2; 3 4];
sorted = sort(A, 'rows')
输出:
sorted = 2×2
3
1
4
2
✅ 六、总结
| 参数 | 说明 |
|---|---|
A |
要排序的数组 |
'ascend'/'descend' |
排序方向 |
'rows'/'columns' |
按行/列排序 |
| 返回值 | 排序后的数组 |
✅ 七、参考
- MATLAB Sort Function
如果你有具体的数组或排序需求,可以告诉我,我可以帮你写出完整的代码示例。