Deslocamento para a esquerda e para a direita

Crie duas funções: uma função de deslocamento para a esquerda e uma função de deslocamento para a direita. Cada função receberá um array e um único parâmetro: o número de deslocamentos.

[1, 2, 3, 4, 5]

[2, 3, 4, 5, 1]  // deslocamento para a esquerda de 1
[5, 1, 2, 3, 4]  // deslocamento para a esquerda de 4

[5, 1, 2, 3, 4]  // deslocamento para a direita de 1
[3, 4, 5, 1, 2]  // deslocamento para a direita de 3

Exemplos

leftShift([1, 2, 3, 4], 1) ➞ [2, 3, 4, 1]

rightShift([1, 2, 3, 4], 1) ➞ [4, 1, 2, 3]

leftShift([1, 2, 3, 4, 5], 3) ➞ [4, 5, 1, 2, 3]

leftShift([1, 2, 3, 4, 5], 5) ➞ [1, 2, 3, 4, 5]
// Depois de deslocar o array completamente, você voltará ao ponto de partida.

leftShift([1, 2, 3, 4, 5], 6) ➞ [2, 3, 4, 5, 1]
// Você deve conseguir fornecer números maiores que o comprimento.
// Pense no comprimento do array como um módulo.

Observações

  • num pode ser maior que a quantidade de valores no array.
  • num nunca será negativo.