Casa > O > O Que Significa "Rodar Uma Matriz" Na Programação?

O que significa "rodar uma matriz" na programação?

Rotar um array significa simplesmente deslocar elementos de array para a esquerda ou para a direita por n posição sem esgotar o "limite de array".

Imagine que você tem cinco caixas dispostas como array linear . Nessas caixas você tem 5 bolas de cores diferentes, por exemplo. 1. vermelho, 2. preto, 3. azul, 4. amarelo, 5. verde. Você tem que rodar a matriz de caixas à esquerda por 1 posição.

Mas o que é rotação? Uma rotação é um movimento circular de um objecto.

Agora rotação à esquerda por 1 posição significa deslocar uma bola em 1 caixa para a sua caixa original.

Então, quando escolhemos a bola vermelha não sobra nenhuma caixa para ela, mas imagine que se ligar o início e o fim do conjunto de caixas, a última caixa será deixada para a primeira caixa. Assim, mude vermelho>5, preto>1, azul->2, amarelo->3, verde->4.

Agora a caixa de array rodou e a bola será como 1. preto, 2. azul, 3. amarelo, 4. verde, 5. vermelho.

Simplesmente, pode ser feito com a rotação correta.

Example :- Given Array is A[5]={1,2,3,4,5}, we have to left rotate it by 1 position then right rotate by 2 position.

After left rotation by 1 position A[5]={ 2,3,4,5,1}

After right rotation by 2 position A[5]= {5,1,2,3,4}.

There are various ways of doing so.

// Left Rotate element one by one. Where d is position by which element in array will be rotated and n is the size of array.

void leftRotate(int arr[], int d, int n)

{

int i;

for (i = 0; i < d; i++)

leftRotatebyOne(arr, n);

}

// Code for rotation

void leftRotatebyOne(int arr[], int n)

{

int i, temp;

temp = arr[0];

for (i = 0; i < n - 1; i++)

arr[i] = arr[i + 1];

arr[i] = temp;

}

There are many efficient ways to rotate an array.

De Barling

Como resolver o fumo branco que sai de um motor diesel :: What does this line of code mean (python): L [::2], L [1::2] = L [1::2], L [::2]?