【发布时间】:2018-01-04 05:08:15
【问题描述】:
我有结构A,它要按照数组c的升序排序。
A.a=[2 3 1]
A.b=[5 3 6]
c=[4 2 1]
[c1 c2]=sort(c)
A=A(c2) % It is not working
显示索引超出矩阵维度错误。
【问题讨论】:
-
您要对结构体
A还是数组A.a和A.b进行排序?在我看来,你打算做后者。 -
结构A要排序
-
所以你想改变结构成员的顺序?在我看来,
A是一个包含一个元素A(1)的数组。A(2)不存在。有什么要排序的?但是,A.a是一个向量,您可以使用A.a(c2)对其元素重新排序。你确定这不是你需要的吗? -
Strct A 由向量 a 和 b 组成。通过对结构 A 进行排序,我的意思是要对其所有向量进行排序。在这种情况下,有两个向量。它可能包含更多数量的向量,那么如何通过简单的编码来完成。
-
看到了吗?那是一个完全不同的问题。 “对结构进行排序”与“对结构中的所有向量进行排序”。我并不是要对语言不屑一顾,而是要向您展示准确地提出您的问题是获得答案的重要部分。
标签: arrays matlab sorting structure