字符串相乘

注意:无论使用哪种方法,都要记得逆置乘数

法一.模拟乘法

tmp 用于存储某一位和上面字符串的乘积,每乘一次,就把tmp里的结果向res累加一次。

但代码写起来相当坐牢,优化一下。

法二.不进位乘法

根本思想跟普通列竖式一样,只是把进位留到最后一步进行。

①.储存乘积

为了方便运算,要先把两个乘数逆序

存储这些未进位的积的,应当是一个int类型的数组tmp ,如果用字符串来存,没办法用一位存一个大于10的数。此时应注意数组的长度是m + n - 1,注:m,n均为乘数位数。

两个乘数的下标相加,确定积的下标。当两个积的下标相同时,在数组该位置上对两个积进行累加。

②.处理进位

③.处理前导0

会出现有一位为0的极端情况,这时候乘积只用保留一个0就行了

尾删直至只剩1个0

④.再反转

相关推荐
aramae4 小时前
MySQL复合查询(8)
java·c语言·开发语言·后端·算法
荆棘鸟智能4 小时前
城市感知设备怎么统一接入?从多协议网关到设备模型的中间件架构设计
人工智能·算法·边缘计算
INGNIGHT8 小时前
270 · 电话号码的字母组合II(Trie)
linux·算法
2401_839080548 小时前
C++常见八股
数据结构·c++·算法
青山是哪个青山9 小时前
LeetCode 188:买卖股票的最佳时机 IV
算法
mikuyyds9 小时前
geo-toolbox 插件算法解析:RUSLE 与 MUSLE 的工程化落地
算法·rust·gis
a187927218319 小时前
【算法】树(二):队列与祖先——BFS 骨架三配件、短路透传与合流
算法·leetcode·二叉树··bfs·算法讲解·树遍历
syagain_zsx10 小时前
算法基础篇 · 03 枚举(C++ 题解)
c++·算法·二进制·枚举
weixin_3077791310 小时前
C++代码实现MATLAB中的ode23tb函数功能
开发语言·c++·算法·matlab
我是章汕呐11 小时前
地级市能源消耗量及消耗强度数据【2006-2023年】平衡面板
人工智能·经验分享·算法·回归