В Дзене Python есть принцип, согласно которому "должен существовать один и, желательно, только один очевидный способ сделать это". Однако в Python есть как миниум три способа возведения числа в степень: оператор **, встроенная функция pow(), функция pow() модуля math.В этой статье мы рассмотрим каждый из способов и разберемся, чем они отличаются. Читать далее
В настоящее время мы уже так привыкли пользоваться готовыми решениями, что при написании высокоуровневого кода, даже не задумываемся над тем, а как вообще реализованы те или иные инструменты. И уж конечно, при возведении чисел в степень, мы никогда не задумываемся о том, а как…
Алгоритмы — это всего лишь пошаговые алгоритмы решения задач, и большинство таких задач уже были кем-то решены, протестированы и проверены. Можно, конечно, погрузиться в глубокую философию гениального Кнута, изучить многостраничные фолианты с доказательствами и обоснованиями, но хотите ли вы тратить на это свое время? Откройте великолепно иллюстрированную книгу, и вы сразу поймете, что алгоритмы — это просто. А грокать алгоритмы — это веселое и увлекательное занятие. Читать дальше →
В этой статье я хочу поделиться несколькими нестандартными алгоритмами для быстрого возведения числа в степень, а также продемонстрировать их реализацию и сравнить их быстродействие в C++, C# и Java.Сравнить точность алгоритмов можно прямо сейчас на этой странице.В конце будет краткая памятка по тому, где и когда лучше применять какой из методов. При правильном выборе можно добиться увеличения скорости вычислений в 5 раз при погрешности ~1%, а иногда и вовсе без неё. Ускорь мои степени!