【问题标题】:Sort the first N elements of a vector in MATLAB在MATLAB中对向量的前N个元素进行排序
【发布时间】:2016-07-06 10:52:24
【问题描述】:

我想对具有更多元素的向量的前 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)

我该怎么做?

【问题讨论】:

    标签: matlab sorting


    【解决方案1】:
    [B, v] = sort(A(1:N));
    B = [B, A(N+1:end)];    % sorted vector
    v = [v, N+1:numel(A)];  % index vector
    

    【讨论】:

    • 谢谢。但我也想有一个索引向量,这样我就可以做到B = A(vector_of_indices)
    • @baister 我已经改进了我的答案
    猜你喜欢
    • 2014-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-04
    • 1970-01-01
    • 1970-01-01
    • 2010-09-15
    相关资源
    最近更新 更多