EX: У меня есть массив {1, 2, 3, 4, 5}
и целое число 7
будет повернуто 7
пространства справа, как: {4, 5, 1, 2, 3}
Как мы можем вращать массив влево?
У меня также есть этот массив {1, 2, 3, 4, 5}
и целое число -7
Он будет вращаться 7
пространства слева как: {3, 4, 5, 1, 2}
Я вращал массив вправо с помощью:
for(int i = 0; i < data.length; i++){
result[(i+n) % data.length ] = data[i];
}
Но как мы можем вращать массив влево?
Проблема в том, что 'отрицательное число по модулю положительное число будет давать отрицательный result'. В вашем случае '(i + n)' будет отрицательным, если ваш 'n' отрицательный ... – Codebender
Просто чтобы сообщить. если вы используете List (not array), используйте встроенную функцию Collections.rotate (+ ve no), чтобы повернуть вправо, а Collections.rotate (-ve no) - повернуть влево. – Popeye