【发布时间】:2017-10-09 02:13:19
【问题描述】:
我在这里浏览过答案,但没有成功。我有以下类型的代码:
matrix = [1, 2, 3]';
for start = 1:3
if start == 1
% nothing happens
elseif start == 2
matrix = [matrix(2),matrix(3),matrix(1)]'
elseif start == 3
matrix = [matrix(3),matrix(1),matrix(2)]'
end
end
我想改变它,以便我可以将它用于比这里的矩阵长得多的向量,所以我想把它写成更一般的形式。 (换句话说,我希望能够从向量中的任何值开始,一直到向量的末尾,然后再从开始直到值。)
【问题讨论】:
-
matrix = [matrix(start:end);matrix(1:start-1)]对你有用吗? -
试试
circshift... -
是的,我认为这两种方法都有效。谢谢你。 (如果您将其发布为答案,我会接受:)
标签: matlab matrix vector permute