image thumbnail

sortlind(A, varargin)

version 3.0.0.0 (2.66 KB) by Jos (10584)
sorts input and returns linear indices for parallel sorting

2.2K Downloads

Updated 06 Mar 2018

View License

sortlind - Sort, returning a linear sort index

B = sortlind(A, ...) equals SORT (A, ...). See the documentation of
sort for details.

[B, I] = sortlind(A, ...) returns a sort index I specifying how
the elements of A were arranged to obtain B. However, in contrast to
sort, these indices are *linear* indices, so that B equals A(I), for
any dimensions and sizes of A. This output can be used to sort
another matrix accordingly.

Examples:
A = [3 4 ; 7 0 ; 5 2]
A2 = 10 * A
[B, I] = sortlind(A) % sort A (along rows)
B2 = A2(I) % parallel sort A2

AA = randi(10,[3 5 2]) % a 3D matrix
[BB, II] = sortlind(AA, 2, 'descend')
isequal(BB,AA(II)) % true!

Cite As

Jos (10584) (2021). sortlind(A, varargin) (https://www.mathworks.com/matlabcentral/fileexchange/19443-sortlind-a-varargin), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R14
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

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

Start Hunting!