leetcode 43.字符串相乘
题目
给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。
示例 1:
输入: num1 = “2”, num2 = “3”
输出: “6”
示例 2:
输入: num1 = “123”, num2 = “456”
输出: “56088”
解法 竖式运算
/*
1 2 3 4
1 2 3 41 1
1 1
*/
class Solution {public:string multiply(string num1, string num2) {int len1 = num1.length();int len2 = num2.length();int *result = new int[len1 + len2]; // 结果存储for(int i = 0 ; i < len1 + len2; i++)result[i] = 0;for(int i = 0; i < len1;i++){ for(int j = 0 ; j < len2;j++){int r1 = int(num1[len1 - i - 1] - '0');int r2 = int(num2[len2 - j - 1] - '0');// cout<<r1<<r2;int re = r1 * r2;int carry = re / 10;re = re % 10;result[len1 + len2 - i - j - 2] += carry;result[len1 + len2 - i - j - 1] += re;}}// cout<<"??"<<endl;for(int k = len1 + len2 - 1; k > 0 ;k--){if(result[k] >= 10)result[k - 1] += result[k] / 10;result[k] = result[k] % 10;}// cout<<"??"<<endl;string re_str;int k = 0;while( k < len1 + len2 && result[k] == 0 ){k++;cout<<k;}if(k == len1 + len2)return "0";for(; k < len1 + len2 ; k++){char c = char(result[k] + '0');re_str.push_back(c);}return re_str;}
};
leetcode 43.字符串相乘相关推荐
- leetcode -43 -字符串相乘 -java版
文章目录 题目 代码 题目 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式. 示例 1: 输入: num1 = &quo ...
- LeetCode 43. 字符串相乘【c++/java详细题解】
目录 1.题目 2.思路 3.c++代码 4.java代码 1.题目 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式. ...
- LeetCode 43字符串相乘44通配符匹配
原创公众号:bigsai,回复进群加入力扣打卡群. 字符串相乘 题目描述: 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形 ...
- LeetCode 43. 字符串相乘(大数乘法)
文章目录 1. 题目 2. 小学竖式乘法 2.1 普通版 2.2 优化版 1. 题目 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示 ...
- C++ ,leetcode 43. 字符串相乘 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式
一.思路: 字符串逆序,然后遍历两个逆序后的字符串,然后对应的字符相乘,i+j等于它的位数. string multiply(string num1, string num2) {reverseStr ...
- LeetCode #43字符串相乘
1.背景知识 1.1 String,StringBuffer,StringConstructor String类是不可变类.StringBuffer和StringConstructor是可变类,字符串 ...
- leetcode 43. 字符串相乘(Multiply Strings)
目录 题目描述: 示例 1: 示例 2: 解法: 题目描述: 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式. 示例 1 ...
- 多写写 leetcode 43. 字符串相乘
难度:中等 频次:55 题目: 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式. 注意:不能使用任何内置的 BigInt ...
- 【Day24】 LeetCode算法题 (注释详细+解题思路)[43. 字符串相乘 ] [1800. 最大升序子数组和]
刷题打卡,第 二十四 天 题目一.43. 字符串相乘 题目二.1800. 最大升序子数组和 题目一.43. 字符串相乘 原题链接:43. 字符串相乘 题目描述: 给定两个以字符串形式表示的非负整数 n ...
最新文章
- mysql 0x80004005 unable to connect to any of the specified mysql hosts
- @Bean修饰的方法参数的注入方式
- Python Requests 简明教程
- 2017年哪些网络安全威胁不容忽视?
- python入门之玩转列表我的菜单_我的Python成长之路---第一天---Python基础(作业2:三级菜单)---2015年12月26日(雾霾)...
- mysql 数据库操作类_【数据库操作类】10个php操作数据库类下载
- [gtest][002] A quick start to build the Google C++ Testing project
- java list 交集_java两个List的交集,并集
- ubuntu 14.04 登录 界面 root
- 2018-12-28
- XDUOJ 1125 Judgement of Orz Pandas
- 通过IP地址获取地理位置信息
- 高斯过程回归(GPR)
- word毕业论文页眉设置自动添加章节标题并左右对齐
- c语言怎么做查询系统,c语言编辑查询系统,可实现增删改查
- JavaScript-作用域和作用链
- 空间分析方法在计算机上的应用,空间分析
- Smart-Link、Monitor-Link介绍与配置举例
- vim报错E45: ‘readonly‘ option is set (add ! to override)
- Hibernate_8_Person和IdCard实例_一对一关系:基于外键
热门文章
- 有关 -fPIC 选项的编译问题
- python实现jpeg压缩(rgb到YCbCr)
- 在文件夹里快速查找一个文件?快捷键?如果按文件的前缀开头查找呢?
- 华为名师揭秘编程界“网红”Python
- 机器学习笔记 - 特征分解
- Vue获取DOM元素并修改属性
- 彩色图像加密matlab算法,彩色图像文件认证加密算法
- RocketMQ如何实现消息轨迹:消息何时发送的?耗时多久?谁消费的?存在哪个broker了?
- mysql批量删除多条记录的sql语句_一次删除多条记录的sql语句
- JavaScript 沙箱模式