我有一个场景,对于任何给定的数字,我需要识别相应的2值的幂。 例如,如果给定的数字是12:
12表示为2的幂,2表示3的幂,2表示2的幂 图5中的2表示功率:2表示2的幂,2表示0的幂
我能否知道此场景中命名的算法
答案 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(数字基数)的定义。