Today’s article is quick and to the point: when you need to take the base 10 logarithm of an integer you can speed this up by about 8x. Read on for the technique and save some CPU cycles!
Archive for August, 2012
Many programmers are aware of a special case where you can use a bitwise shift for multiplication or division when you’re multiplying or dividing by a power of two. For example, you can replace i * 2
with i << 1
and i / 2
with i >> 1
. A lesser-known trick works for modulus. But are these alternatives actually any faster? Today's article puts them to the test!
Math.abs
is a commonly-used utility function for taking the absolute value of a Number
. However, there’s no special-case version for taking the absolute value of an int
. Of course Math.abs
will work for int
values, but we can do it faster. Read on for a couple of ways.
A common programming task is to determine if an integer is even or odd. Recently, I saw an article showing how to do the task faster than the usual way: (i % 2) == 0
. Today’s article shows an even faster way to check for even or odd.