主要内容

이번역페이지는최신내용을담고있지않습니다。최신내용을문으로보려면여기를클릭하십시오。

排序

배열소정렬

설명

예제

B=排序(一个一个의소를오름차순으로정렬합니다。

  • 一个가벡터경우sort ()는벡터소를정렬합니다。

  • 一个가행렬경우sort ()一个의열을벡터로취급하고각열을정렬합니다。

  • 一个가다차원배열경우sort ()1는크기가이아닌첫번째배열차원을따라동작을수행하며,요소를벡터로취급합니다。

예제

B=排序(一个昏暗的은 차원昏暗的을따라정렬된一个의소를반환합니다。예를들어,一个가행렬경우分类(2)는각행의소를정렬합니다。

예제

B=排序(___方向은위에열거된구문에方向으로순서를지정하여정렬된一个의소를반환합니다。“提升”는오름차순(디폴트값)을,“下”는내림차순을나타냅니다。

예제

B=排序(___名称,值는정렬을위한추가파라미터를지정합니다。예를들어,sort(“ComparisonMethod”,“abs”)는크기를기준으로一个의소를정렬합니다。

예제

B= sort(___는또한위에열거된구문에덱스벡터모음을추가로반환합니다。一个와크기가동일하며,정렬된차원을따라一个의소가B에어떻게배열되었는지설명합니다。예를들어,一个가벡터이면B = a (i)입니다。

예제

모두 축소

행벡터를만든다음,이벡터의소를오름차순으로정렬합니다。

A = [9 0 -7 5 3 8 -10 4 2];B = sort(A)
B =1×9-10 -7 0 2 3 4 5 8 9

행렬을만든다음,이행렬의각행을오름차순으로정렬합니다。

A = [3 6 5;7 -2 4;10 0 -9]
一个=3×33 6 5 7 -2 4 10 0 -9
B = sort(A,2)
B =3×33 5 6 -2 4 7 -9 0 1

행렬을만든다음,이행렬의열을내림차순으로정렬합니다。

A = [10 -12 4 8;6 -9 8 0;2 3 11 -2;1 1 9 3]
一个=4×410 -12 4 8 6 -9 8 0 2 3 11 -2 11 9 3
B = sort(A,“下”
B =4×410 3 11 8 6 1 9 3 2 -9 8 0 1 -12 4 -2

R2017a부터는큰따옴를사용하여string형배열을만들고排序함수를사용하여이를정렬할수있습니다。string형배열의각열에있는문자열을Unicode®사전순으로정렬합니다。

A = [“桑托斯”“燃烧”...“琼斯”“森田”...“彼得罗夫”“亚当斯”];B = sort(A)
B =3 x2字符串琼斯,亚当斯,彼得罗夫,伯恩斯,桑托斯,森田

각행에있는문자열을정렬합니다。

B = sort(A,2)
B =3 x2字符串伯恩斯,桑托斯,琼斯,森田,亚当斯,彼得罗夫

datetime형값으로구성된배열을만든다음,이러한값을오름차순으로,즉가장이른달력날짜부터가장늦은날짜순으로정렬합니다。

Ds = {“2012-12-22”“2063-04-05”“1992-01-12”};A = datetime(ds,“格式”“yyyy-MM-dd”
一个=3 x1 datetime2012-12-22 2063-04-05 1992-01-12
[B,I] =排序(A)
B =3 x1 datetime1992-01-12 2012-12-22 2063-04-05
我=3×13 1 2

B는정렬된날짜를나열하고一个의대응하는덱스를포함합니다。

덱스배열를사용하여원래배열에서정렬된소에직접액세스합니다。

(我)
ans =3 x1 datetime1992-01-12 2012-12-22 2063-04-05

대응하는소에관련데이터가포함된두개의행벡터를만듭니다。

X = [3 6 4 2 1 5];Y = [“黄色”“紫色”“绿色”“橙色”“红色”“蓝色”];

먼저 벡터X를정렬한다음벡터YX와동일한순서로정렬합니다。

[Xsorted,I] = sort(X)
Xsorted =1×61 2 3 4 5 6
我=1×65 4 1 3 6 2
排序= Y(I)
Ysorted =1 x6字符串"红" "橙" "黄" "绿" "蓝" "紫"

2×2×2배열을만든다음,이배열의요소를3번째차원을따라오름차순으로정렬합니다。

A(:,:,1) = [2 3;1 6];A(:,:,2) = [-1 9;0 12];一个
A = A(:,:,1) = 2 3 1 6 A(:,:,2) = -1 9 0 12
B = sort(A,3)
B = B(:,:,1) = -1 3 0 6 B(:,:,2) = 2 9 1 12

一个를열로나타내는(:)을사용하여一个의모든소를정렬합니다。

B = sort(A(:))
B =8×1-1 0 12 3 6 9 12

실수부를기준으로복소수벡터의소를정렬합니다。기본적으로排序함수는복소수값을크기를기준으로정렬하고동일한값간의우선순위는위상각으로결정합니다。“ComparisonMethod”의 값을“真实”的로지정하여복소수값을실수부를기준으로정렬합니다。소의실수부가같으면排序는허수부에따라우선순위를결정합니다。

A = [1+ 2i3 + 1i1i 0 -1i];B = sort(A,“ComparisonMethod”“真实”的
B =1×5复杂0.0000 - 1.0000i 0.0000 + 0.0000i 0.0000 + 1.0000i 1.0000 + 2.0000i 3.0000 + 1.0000i

입력marketing수

모두 축소

입력배열로,벡터,행렬,다차원배열중하나로지정됩니다

  • 一个가스칼라이면sort ()一个를반환합니다。

  • 一个가복소수marketing경우,기본적으로排序는크기별로소를정렬합니다。두개이상의요소가같은크기를같는경우,요소는구간(−π,π)의위상각에따라정렬됩니다。

  • 一个가문자형벡터로구성된셀형배열이거나字符串형배열이면sort ()는utf-16문자코딩체계의코드순서에따라소를정렬합니다。정렬은대/소문자를구분합니다。문자형배열및字符串형배열의정렬에대한자세한내용은문자형배열과字符串형배열의정렬순서항목을참조하십시오。

  • 一个가字符串형배열이면排序는배열의소를다시정렬하지만字符串형내의문자는다시정렬하지않습니다。

  • 一个가分类형배열이면정렬순서는类别(A)에서반환되는범주순서를기반으로합니다。

데이터형:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|字符|字符串|细胞|分类|datetime|持续时间
복소수지원여부:

연산을수행할차원으로,양의정수스칼라로지정됩니다。값이지정되지않은경우디폴트값은크기가1이아닌첫번째배열차원이됩니다。

  • 행렬一个가있다고가정해보겠습니다。类(1)一个의열에있는소를정렬합니다。

    排序(A,1)列操作

  • 分类(2)一个의행에있는소를정렬합니다。

    排序(A,2)逐行操作

昏暗的ndims (A)보다큰경우排序一个를반환합니다。一个가셀형배열경우에는昏暗的이지원되지않습니다。즉,排序는크기가1이아닌첫번째배열차원을따라동작합니다。

데이터형:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

정렬방향으로,“提升”또는“下”로지정됩니다。一个가셀형배열경우에는方向이지원되지않습니다。즉,排序는오름차순으로만정렬합니다。

이름-값通讯录수

선택적수쌍을Name1 = Value1,…,以=家으로지정합니다。여기서的名字은수이름이고价值는대응값입니다。이름-값수는다른수뒤에와야하지만,수쌍의순서는상관없습니다。

R2021a이전릴리스에서는쉼` ` `를사용하여각이름과값을구분하고的名字을따옴@ @로묶으십시오。

예:sort(“MissingPlacement”,“最后”)

누락값(NaT<定义>失踪)의배치로,“MissingPlacement”와함께다음중하나가쉼@ @로구분되어지정됩니다。

  • “汽车”-누락된소가오름차순의경우마지막에、내림차순의경우처음에배치됩니다。

  • “第一”-누락된소가처음에배치됩니다。

  • “最后一次”-누락된소가마지막에배치됩니다。

소비교방법으로,“ComparisonMethod”와함께다음중하나가쉼@ @로구분되어지정됩니다。

  • “汽车”- - - - - -一个가실수경우真正的(一个)를기준으로一个를정렬하고,一个가복소수경우abs ()를기준으로정렬합니다。

  • “真实”的- - - - - -一个가실수이거나복소수경우真正的(一个)를기준으로一个를정렬합니다。一个에실수부가동일한소가있는경우,图像放大(A)를사용하여우선순위를결정합니다。

  • “abs”- - - - - -一个가실수이거나복소수경우abs ()를기준으로一个를정렬합니다。一个에크기가동일한소가있는경우,구간(-π,π]에서의角(A)를사용하여우선순위를결정합니다。

출력marketing수

모두 축소

정렬된배열로,벡터,행렬또는다차원배열로반환됩니다。B一个와크기와유형이동일합니다。

데이터형:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|字符|字符串|细胞|分类|datetime|持续时间

정렬marketing덱스로,벡터,행렬또는다차원배열로반환됩니다。一个와크기가동일합니다。덱스벡터는排序가동작하는동일한차원을따라배열됩니다。예를들어,一个가2×3행렬경우[B,I] =排序(A,2)一个의각행의소를정렬합니다。출력값一个의각행의요소들이어떻게재배열되었는지기술하는1×3행인덱스벡터들의모음입니다。

입력값이반복값을포함하는경우정렬인덱스는정렬방향과관계없이입력값의원래순서를유지합니다。예를들어,A = [1 2 1 2]이면[Ba,Ia] = sort(A,'ascend')는정렬덱스Ia = [1 3 2 4]를반환하고[Bd,Id] = sort(A,' descent ')는정렬덱스Id = [2 4 1 3]을반환합니다。

세부 정보

모두 축소

문자형배열과字符串형배열의정렬순서

MATLAB®은UTF-16문자코딩체계를사용하여문자를Unicode®로저장합니다。문자형배열과字符串형배열은UTF-16코드포tmp트순서에따라정렬됩니다。ASCII문자에도해당되는문자의경우이순서에따라대문자가소문자앞에옵니다。숫자와일부문장부호도문자앞에옵니다。

  • sortrows함수는행렬또는테이블입력값의여러열에서2차정렬할수있도록추가적인유연성을제공합니다。

  • 排序함수와관계연산자는복소수에서로다른순서를사용합니다。자세한내용은관계 연산항목을참조하십시오。

확장 기능

버전 내역

R2006a이전에개발됨

Baidu
map