Есть ли способ, я могу написать следующую строку, более эффективную, чем текущее выражение?Улучшение выражения с целыми умножениями и по модулю
Math.abs(((a*k + b) % P) % m);
P
является константой простое число
m
не является отрицательной и мощностью 2
a
и b
являются случайными неотрицательное числа
Примечание: Для того, чтобы быть ясно, что это не горячее пятно, которое я обнаружил во время профилирования, и хочу улучшить. Я заинтересован в поиске, если есть способ написать выражение лучше (с точки зрения эффективности), которое может быть легко известно кому-то с лучшим фоном в битовых операциях, например.
Если ваш код работает, и вы просите улучшения, вы должны, вероятно, задать этот вопрос на http://codereview.stackexchange.com/. – Pshemo
@Pshemo: Это SE также для вопросов оптимизации или только для подходов стиля кода/дизайна? – Cratylus
Являются ли 'P' и' m' полезными или только некоторые случайные значения? – harold