Y = circshift (A,k) ;
将 A 中的元素平移 k 个位置。如果 k 为正整数,则将 A 中的元素循环右移 k 位;如果 k 为负整数,则将 A 中的元素循环左移 |k| 位。
A 可以是向量,矩阵,多维数组;k 为整数标量或整数向量。
x1=[1,1,3,4,2];
x2=[1,3,2];
y1=circshift(x1,-2); % 将x1中元素循环左移2位
y2=circshift(x2,1); % 将x2中元素循环右移1位
Y = circshift (A,k,dim) ;
将 A 中的值沿维度 dim 平移 k 个位置。输入 k 和 dim 必须为正整数标量。通常,指定 dim = 1 以交换行,指定 dim = 2 以交换列,等等。
x = [1,1,3,4,2; 2,3,4,2,1; 5,6,3,2,9];
y1= circshift(x,2,2); % 将x中元素按列循环右移2个单位
y2= circshift(x,-1,1); % 将x中元素按行循环左移1个单位