Deslocamentos à esquerda e à direita
Crie duas funções: uma de deslocamento à esquerda e outra de deslocamento à direita. Cada função receberá um vetor e um número que indica quantas posições deslocá-lo.
new int[]{1, 2, 3, 4, 5}
new int[]{2, 3, 4, 5, 1} // deslocamento à esquerda de 1
new int[]{5, 1, 2, 3, 4} // deslocamento à esquerda de 4
new int[]{5, 1, 2, 3, 4} // deslocamento à direita de 1
new int[]{3, 4, 5, 1, 2} // deslocamento à direita de 3Exemplos
Program.leftShift(new int[]{1, 2, 3, 4}, 1) ➞ new int[]{2, 3, 4, 1}
Program.rightShift(new int[]{1, 2, 3, 4}, 1) ➞ new int[]{4, 1, 2, 3}
Program.leftShift(new int[]{1, 2, 3, 4, 5}, 3) ➞ new int[]{4, 5, 1, 2, 3}
Program.leftShift(new int[]{1, 2, 3, 4, 5}, 5) ➞ new int[]{1, 2, 3, 4, 5}
// Ao deslocar o vetor uma volta completa, você retorna à ordem inicial.
Program.leftShift(new int[]{1, 2, 3, 4, 5}, 6) ➞ new int[]{2, 3, 4, 5, 1}
// As funções devem aceitar quantidades de deslocamentos maiores que o comprimento do vetor.
// Considere o comprimento do vetor como o módulo.Observações
numpode ser maior que a quantidade de elementos do vetor.numnunca será negativo.