长乘运算
当然, 如果自己实现这样一个大数, 用数组来存储每一位是我当前想到的方法. 那如何进行乘法运算呢?...上小学知识:
个位数相乘, 一次运算
2位数乘1位数, 分解后共: 2次乘法和2位数的加法, 4次运算(乘10可看做移位操作)
3位数乘1位数, 分解后共: 3次乘法, 3位数的加法(不要看两个加号...来算一下:
: 共2次乘法, 2位数加法, 共4次运算.
an 和 bm : 共2次乘法, 共2次运算
剩下最外层的加法, 最差情况: ( 4位数, 4位数), 共4次运算
则总计, 次运算....算一下:
计算 u: 两位数乘法, 10次运算
计算w: 10次运算
计算s: 两位数减法两次, 一次乘法, 14次运算
计算整体: 8位数相加(), 8次运算
整体: 次运算.
32次运算, 之前长乘的方式需要几次呢...也就是说, 4位数的乘法, 其中用到了3次两位数乘法, 2次两位数减法, 1次8位数加法.
8位数乘法
8位数乘法就不展开了, 直接套用4位数乘法得出的结论, 其运算次数为:
3次4位数乘法: 次
2次