什么是用于识别场景的算法

时间:2014-01-29 07:52:24

标签: algorithm

我有一个场景,对于任何给定的数字,我需要识别相应的2值的幂。 例如,如果给定的数字是12:

12表示为2的幂,2表示3的幂,2表示2的幂   图5中的2表示功率:2表示2的幂,2表示0的幂

我能否知道此场景中命名的算法

1 个答案:

答案 0 :(得分:5)

它的名字是基数转换。将您的数字转换为二进制基数,您将获得2的幂和。例如,

12 = 1100

这意味着:

     1           1          0         0
     ^           ^          ^         ^
     |           |          |         |
12 = 1 * (2^3) + 1* (2^2) + 0*(2^1) + 0*(2^0)
            |          |         |         |
            V          V         V         V
            3          2         1         0

- 根据radix(数字基数)的定义。