在MATLAB中对向量的前N个元素进行排序

时间:2016-07-06 10:52:24

标签: matlab sorting

我想对具有更多元素的向量的前N个元素进行排序。 例如:

A = [3 2 5 1 8 9 2 1 9];

如果N = 5,则输出应为:

B = [1 2 3 5 8 9 2 1 9];

我还希望有一个索引v的向量,以便B = A(v)

我该怎么做?

1 个答案:

答案 0 :(得分:4)

[B, v] = sort(A(1:N));
B = [B, A(N+1:end)];    % sorted vector
v = [v, N+1:numel(A)];  % index vector