# MATLAB内で使用​されている組み込み関​数(私自身知りたいの​は"sort"です)​の中身のコードがどの​ようになっているかを​見るためにはどのよう​にすればよいでしょう​か．ちなみに現在so​rt関数を開くとすべ​て説明文(コメントア​ウト)で，どのように​構築されているかは記​載されておりません．​下記に示しておきます​．

3 ビュー (過去 30 日間)
hirokazu machida 2021 年 9 月 7 日
コメント済み: hirokazu machida 2021 年 9 月 8 日
%SORT Sort in ascending or descending order.
% B = SORT(A) sorts in ascending order.
% The sorted output B has the same type and size as A:
% - For vectors, SORT(A) sorts the elements of A in ascending order.
% - For matrices, SORT(A) sorts each column of A in ascending order.
% - For N-D arrays, SORT(A) sorts along the first non-singleton dimension.
%
% B = SORT(A,DIM) also specifies a dimension DIM to sort along.
%
% B = SORT(A,DIRECTION) and B = SORT(A,DIM,DIRECTION) also specify the
% sort direction. DIRECTION must be:
% 'ascend' - (default) Sorts in ascending order.
% 'descend' - Sorts in descending order.
%
% B = SORT(A,...,'MissingPlacement',M) also specifies where to place the
% missing elements (NaN/NaT/<undefined>/<missing>) of A. M must be:
% 'auto' - (default) Places missing elements last for ascending sort
% and first for descending sort.
% 'first' - Places missing elements first.
% 'last' - Places missing elements last.
%
% B = SORT(A,...,'ComparisonMethod',C) specifies how to sort complex
% numbers. The comparison method C must be:
% 'auto' - (default) Sorts real numbers according to 'real', and
% complex numbers according to 'abs'.
% 'real' - Sorts according to REAL(A). Elements with equal real parts
% are then sorted by IMAG(A).
% 'abs' - Sorts according to ABS(A). Elements with equal magnitudes
% are then sorted by ANGLE(A).
%
% [B,I] = SORT(A,...) also returns a sort index I which specifies how the
% elements of A were rearranged to obtain the sorted output B:
% - If A is a vector, then B = A(I).
% - If A is an m-by-n matrix and DIM = 1, then
% for j = 1:n, B(:,j) = A(I(:,j),j); end
%
% The sort ordering is stable. Namely, when more than one element has the
% same value, the order of the equal elements is preserved in the sorted
% output B and the indices I relating to equal elements are ascending.
%
% Examples:
% % Sort a vector in ascending order
% sort([0 3 1 0 2 0 1 6])
% % Sort each column or row of a matrix
% A = [3 7 5; 0 4 2]
% B1 = sort(A,1) % sort each column
% B2 = sort(A,2) % sort each row
% % Sort complex numbers according to their real part
% A = [1+1j ; 1-1j ; -2-2j ; 0 ; -2+2j]
% B = sort(A,'ComparisonMethod','real')
%
% Copyright 1984-2017 The MathWorks, Inc.
% Built-in function.

サインインしてコメントする。

### 回答 (1 件)

Hiroyuki Hishida 2021 年 9 月 7 日
Machida様、
こちらが参考になると思います。 https://jp.mathworks.com/help/matlab/ref/open.html#bu_46i9-2
ただし、関数によっては、実装コードを閲覧することができないものもございます。それらは、高速化等を目的にバイナリ化されてるためです。もし、今確認されたい関数sortがこれに該当する場合は、閲覧方法はございませんことを、予めご了承ください。

どうぞよろしくお願いします。

##### 1 件のコメント表示非表示 なし
hirokazu machida 2021 年 9 月 8 日

sort関数は閲覧不可の関数であったため，やはり見ることができませんでした．

サインインしてコメントする。

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!