当前位置: 首页 > news >正文

python 网站开发 sae/河南网站推广

python 网站开发 sae,河南网站推广,专业网站建设顾问,太原网站建设王道下拉惠字符串乘法 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积, 它们的乘积也表示为字符串形式。 说明: num1 和num2 的长度小于110。 num1 和 num2 只包含数字 0-9。num1 和 num2 均不以零开头,除非是数字 0 本身。…

字符串乘法

给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积, 它们的乘积也表示为字符串形式。

说明:

  • num1 和num2 的长度小于110。 num1 和 num2 只包含数字 0-9。
  • num1 和 num2 均不以零开头,除非是数字 0 本身。
  • 不能使用任何标准库的大数类型(比如BigInteger)或直接将输入转换为整数来处理。

对于数num1从个位开始依次与num2相乘然后求和。算法和手工计算乘法一样没什么特别的地方。
以12 * 23 为例,计算过程如下:
2 * 23 = 46
(1 * 23)*10 = 230 //考虑进位,加法也一样
46 + 230 = 276

public String multiply(String num1, String num2) {//任意一个数为零if("0".equals(num1) || num2.equals("0")){return "0";}String sum = "";for (int i = num1.length() - 1; i >= 0; i--) {String[] tmpSum = new String[num2.length() + 1];String a = num1.substring(i, i + 1);if(a.equals("0")){continue;}for (int j = num2.length() - 1; j >= 0; j--) {String b = num2.substring(j, j + 1);int tmpSunNum = tmpSum[j + 1] == null ? 0 : Integer.valueOf(tmpSum[j + 1]);int t = Integer.valueOf(a) * Integer.valueOf(b) + tmpSunNum;if (t >= 10) {tmpSum[j + 1] = String.valueOf(t).substring(1, 2);tmpSum[j] = String.valueOf(t).substring(0, 1);} else {tmpSum[j + 1] = String.valueOf(t).substring(0, 1);}}//数组转为数字字符串String strSum = "";for (String s : tmpSum) {if (s != null)strSum += s;}for (int x = 0; x < num1.length() - 1 - i; x++) {strSum += "0";}sum = add(sum, strSum);}return sum;}/*** 字符串之和* @param num1* @param num2* @return*/private String add(String num1, String num2) {int maxlen = Math.max(num1.length(), num2.length());String[] charList = new String[maxlen + 1];for (int i = 0; i < maxlen; i++) {String num1i = null, num2i = null, sumi = charList[i];if (num1.length() - i - 1 >= 0)num1i = num1.substring(num1.length() - i - 1, num1.length() - i);if (num2.length() - i - 1 >= 0)num2i = num2.substring(num2.length() - i - 1, num2.length() - i);if (num1i == null)num1i = "0";if (num2i == null)num2i = "0";if (sumi == null)sumi = "0";int sum = Integer.valueOf(num1i) + Integer.valueOf(num2i) + Integer.valueOf(sumi);if (sum >= 10) {//进位charList[i] = String.valueOf(sum).substring(1, 2);charList[i + 1] = String.valueOf(sum).substring(0, 1);} else {charList[i] = String.valueOf(sum).substring(0, 1);}}String result = "";for (int i = charList.length - 1; i >= 0; i--) {if (charList[i] != null)result += charList[i];}return result;}

测试结果如下:
1500643-20181128163354352-1537932152.png

转载于:https://www.cnblogs.com/YangLin2510/p/10032914.html

http://www.lbrq.cn/news/1476883.html

相关文章:

  • 机械公司网站建设/百度推广没有效果怎么办
  • html展示网站源代码/百度一下百度首页官网
  • 企业网站的基本功能有哪些/网络营销前景和现状分析
  • 做淘宝网站用什么软件做/百度站长平台网站提交
  • 企业网站域名注册查询/it培训班大概需要多少钱
  • 如何建设公司门户网站/seo标题生成器
  • 政务系统网站建设/天津seo技术教程
  • 做网站去哪个公司/网站建站价格
  • 个人网站不能做淘宝客/5118网站查询
  • 潍坊企业自助建站系统/百度app安装下载免费
  • 效果图网站有哪些好的/衡阳seo服务
  • 网站模板 阿里/技术教程优化搜索引擎整站
  • 向网站上传文件怎么做/网站案例分析
  • 网站域名变更/互联网登录的网站名
  • 上海在线网站/游戏推广接单平台
  • 临沂市建设工程监理公司网站/电商运营转行后悔了
  • 呼和浩特建站/沈阳网站关键词排名
  • 潮州市建设局官方网站/网站有哪些平台
  • 网站建设 荆州/seo霸屏软件
  • 怎么把园林设计网站做的酷炫/推广引流方法与渠道
  • 网站建设应遵循的原则/外贸网站优化
  • 那个网站做二手设备比较好/友链网
  • 陕西省交通建设集团西长分公司网站/sem是什么品牌
  • 宣传网站建设方案模板下载/网络营销策划案
  • 如何把自己做的网站放到微信上/品牌推广方案范文
  • 大型营销型网站制作/网络营销的作用
  • 国内知名公关公司/快速整站排名seo教程
  • 网站开发流程数据库/杭州推广平台有哪些
  • 中国建筑八个局排名/排名优化系统
  • 网站制作现状解决方案/sem优化托管
  • 【Django】-6- 登录用户身份鉴权
  • MFC CChartCtrl编程
  • 如何在 Ubuntu 24.04 或 22.04 LTS Linux 上安装 DaVinci Resolve
  • 某讯视频风控参数逆向分析
  • Kubernetes 应用部署实战:为什么需要 Kubernetes?
  • HighgoDB查询慢SQL和阻塞SQL