我是Matlab的新手。我有一个向量v = [3 5 7 9 11]
。我需要改变一些元素的顺序。例如:
v = [3 7 5 9 11] %// by moving "5" after "7" or
v = [3 5 9 7 11] %// by moving "9" before "7"
在Java中,我只需使用
即可Collections.rotate(array.subList(new_index,old_index ),1);
MATLAB中是否有像Java这样的行代码?谢谢你的帮助。
答案 0 :(得分:4)
是的,有:
v(new_index) = v(old_index);
其中new_index
和old_index
可以是向量。在您的示例中:
v([2 3]) = v([3 2]);
v([3 4]) = v([4 3]);
答案 1 :(得分:0)
不确定
>> v = [3 5 7 9 11];
>> v([1 3 2 4 5]) % moving "5" after "7"
>> v([1 2 4 3 5]) % moving "9" before "7"