我有矩阵A=rand(M,N)
和行向量B=randi([1 M],1,N)
。我想根据C
中的行号从A
为B
分配条目。那是
C(1,1)=A(B(1,1),1)
,C(1,2)=A(B(1,2),2)
等。是否有更简单的方法可以在不使用C
循环的情况下获取for
?
答案 0 :(得分:1)
您只需使用sub2ind
将行下标1:numel(B)
和列下标C = A(sub2ind(size(A), B, 1:numel(B)));
转换为线性索引
public class Vehicle implements Comparable<Vehicle> {
....
@Override
public int compareTo(Vehicle o) {
if (o.dataMatricula.compareTo(dataMatricula) ==0){
return matricula.compareTo(o.matricula);
}
else {
return o.dataMatricula.compareTo(dataMatricula);
}
...
}