circshift

Desloca os elementos de um array de forma circular.

Categoria: Language Fundamentals > Matrices and Arrays

Sintaxe

B = circshift(A, k)

Desloca ao longo da primeira dimensão de tamanho diferente de 1 por k posições.

B = circshift(A, k, dim)

Desloca ao longo da dimensão dim.

Descrição

Elementos empurrados para fora por uma ponta reentram pela outra, então nada se perde e o tamanho não muda. Um deslocamento maior que a dimensão dá a volta, então deslocar um vetor de comprimento 5 por 7 equivale a deslocar por 2.

Em uma matriz, o deslocamento na dimensão 1 move linhas e na dimensão 2 move colunas.

Argumentos de entrada

A
Array de qualquer tipo.
k
Deslocamento inteiro. Positivo move os elementos para índices maiores, negativo para menores.
dim
Dimensão ao longo da qual deslocar.

Argumentos de saída

B
Array do mesmo tamanho de A.

Exemplo

circshift(1:5, 2)
circshift(1:5, -1)
circshift([1 2 3; 4 5 6], 1, 2)
Saída
ans = 1×5

     4     5     1     2     3
ans = 1×5

     2     3     4     5     1
ans = 2×3

     3     1     2
     6     4     5

Veja também

permute flip rot90 reshape