private int reverseBitsOrder(int number) {
    return reverseOrder.reverse(number);
  }
Iterative algorithm based on binary operators. The key of this algorithm is take in to account
the number of digits of the binary representation. First we are going to create the reverse
number with a 1 as first binary number. Then we are going to revert the order of the binary
number and at the end we are going to remove the first one we added to take into account the
number of digits of this binary number. The complexity order of this algorithm in space terms
is O(1) and in time terms is equals to O(N) where N is the number of digits in the binary
representation.
src/main/java/com/github/pedrovgs/problem71/ReverseBinaryNumber.java