1. 程式人生 > >MATLAB中sort函式對矩陣數進行排序

MATLAB中sort函式對矩陣數進行排序

<span style="font-size:18px;">(1)B=sort(A) 對一維或二維陣列進行升序排序,並返回排序後的陣列,當A為二維時,對陣列每一列進行排序.

eg: A=[1,5,3],則sort(A)=[1,3,5]

   A=[1,5,3;2,4,1],則sort(A)=[1,4,1;2,5,3]

(2)B=sort(A,dim),對陣列按指定方向進行升序排序,

dim =1,表示對每一列進行排序,,dim=2表示對每一行進行排序.

(3)B=sort(A,dim,mode),mode為指定排序模式,mode為"ascend"時,進行升序排序,為"descend "時,進行降序排序.

(4)[B,I]=sort(A,.....),I為返回的排序後元素在原陣列中的行位置或列位置.

一些例子:


>> A=[3 4 2;1 5 3;4 7 1]

A =

     3     4     2
     1     5     3
     4     7     1

>> A(:)

ans =

     3
     1
     4
     4
     5
     7
     2
     3
     1

>> min(A(:))

ans =

     1

>> max(A(:))

ans =

     7

>> A

A =

     3     4     2
     1     5     3
     4     7     1

>> sort(A)

ans =

     1     4     1
     3     5     2
     4     7     3

>> A

A =

     3     4     2
     1     5     3
     4     7     1

>> sort(A(:))

ans =

     1
     1
     2
     3
     3
     4
     4
     5
     7

>> sort(A,1)

ans =

     1     4     1
     3     5     2
     4     7     3

>> sort(A,2)

ans =

     2     3     4
     1     3     5
     1     4     7

>> sort(A,1,"descend")
??? sort(A,1,"descend")
             |
Error: Missing variable or function.

>> sort(A,1,'descend')

ans =

     4     7     3
     3     5     2
     1     4     1

>> [B,I]=sort(A)

B =

     1     4     1
     3     5     2
     4     7     3


I =

     2     1     3
     1     2     1
     3     3     2</span>