秦九韶算法-将b进制数转化成十进制
有二进制1010
取出 第一位
1
1 * 2 + 0 = 2
10 * 2 + 1 == 2 * 2 + 1
10 = 5
5 * 2 + 0 = 10
有二进制1010
二进制转换成十进制:基数乘以权,然后相加
$$ 1 * 2^3 + 0 * 2^2 + 1 * 2^1 + 0 * 2^0$$
$$ = ((1 * 2 + 0) * 2 + 1 ) * 2 + 0$$
1 | int get(string s, b) { |
有二进制1010
取出 第一位
1
1 * 2 + 0 = 2
10 * 2 + 1 == 2 * 2 + 1
10 = 5
5 * 2 + 0 = 10
有二进制1010
二进制转换成十进制:基数乘以权,然后相加
$$ 1 * 2^3 + 0 * 2^2 + 1 * 2^1 + 0 * 2^0$$
$$ = ((1 * 2 + 0) * 2 + 1 ) * 2 + 0$$
1 | int get(string s, b) { |
博客内容遵循 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议
评论