代码功能仅限在62进制以下
概要:
主要是模拟手工运算。每一轮把运算得到商移入下一轮的除数,把得到的余数保存在输出的数组里。直到除数剩下一个数且小于要置换的进制数。
关键部分:
1,把indata的字符数组转换成inda整型数组,再加以计算。
2,每一轮求得的商前n位有可能出现0,则要过滤.
3,输出进制数,应从后向前输出
相关代码如下:
PS:看书时发现二进制和二叉树有极相似的一点,二进制数换十进制是每一位按如下公式进行。
比如有n 位数
total = a[0]*2^(n-1) + a[1]*2^(n-2) + ..... + a[n-2]*2^(1) + a[n-1]*1;
而满二叉树每一层的节点数也有相似之处.
第0层节点数:2^0
第1层节点数: 2^1
第N层节点数: 2^N
很有意思,不过就是不知道哪里可以运用上。
待交流。