题目

https://leetcode-cn.com/problems/add-strings/

题解

代码

/*** 给定两个字符串形式的非负整数 num1 和 num2 ,计算它们的和。*/
public class Solution {public static String addStrings(String num1, String num2) {char[] c1 = num1.toCharArray();char[] c2 = num2.toCharArray();if (c1.length >= c2.length) { // 假设 c2 位数多。否则交换 c1 c2 从而使其符合假设。c1 = num2.toCharArray();c2 = num1.toCharArray();}int maxLen = c2.length;int[] c3 = new int[maxLen + 1];int[] c1_copy = new int[maxLen + 1];int[] c2_copy = new int[maxLen + 1];for (int i = 0; i < c1.length; i++) { // 将 c1_copy 填充至与 c3 相同长度c1_copy[maxLen - i] = c1[c1.length - i - 1] - '0';}for (int i = 0; i < c2.length; i++) { // 将 c2_copy 填充至与 c3 相同长度c2_copy[maxLen - i] = c2[c2.length - i - 1] - '0';}int carry = 0;for (int i = maxLen; i >= 0; i--) { // 逐位相加int sum = c1_copy[i] + c2_copy[i] + carry;if (sum >= 10) {c3[i] = sum - 10;carry = 1;} else {c3[i] = sum;carry = 0;}}StringBuilder sb = new StringBuilder();for (int i = 0; i <= maxLen; i++) {if (i != 0 || c3[i] != 0) sb.append(c3[i]);}return sb.toString();}public static void main(String[] args) {System.out.println(addStrings("11", "123"));}
}

leetcode 415. 字符串相加(Java版)相关推荐

  1. LeetCode 415. 字符串相加 (逢十进一模版字符处理)

    415. 字符串相加 题意: 用两个字符串表示两个数 求出其相加的结果 不能使用任何内建 BigInteger 库 不能直接将输入的字符串转换为整数形式 思路: 翻转字符串,将其转为字符数组,即从下标 ...

  2. leetcode -43 -字符串相乘 -java版

    文章目录 题目 代码 题目 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式. 示例 1: 输入: num1 = &quo ...

  3. Leetcode 415. 字符串相加

    难度:简单 频率:119 题目: 给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和并同样以字符串形式返回. 你不能使用任何內建的用于处理大整数的库(比如 BigInteger), 也 ...

  4. LeetCode 415. 字符串相加(大数加法)

    1. 题目 给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和. 注意:num1 和num2 的长度都小于 5100. num1 和num2 都只包含数字 0-9. num1 和num ...

  5. LeetCode 415.字符串相加

    题目描述 给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和. 注意: num1 和num2 的长度都小于 5100. num1 和num2 都只包含数字 0-9. num1 和num ...

  6. Leetcode 415. 字符串相加 (每日一题 20210826 同类型题)

    给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和.提示:num1 和num2 的长度都小于 5100 num1 和num2 都只包含数字 0-9 num1 和num2 都不包含任何前 ...

  7. 2022-3-31 Leetcode 415.字符串相加

    最终版,难度不大,魔鬼细节 class Solution {public:string addStrings(string num1, string num2) {reverse(num1.begin ...

  8. 【LeetCode笔记】415. 字符串相加(Java、字符串)

    题目描述 不能直接把字符串转换成整数(会溢出) 面试被问过,今天刷面经又刷到..那就索性水一篇文吧! 更新:原题就是 leetcode 415 思路 & 代码 只要理好字符串s.字符串t.答案 ...

  9. leetcode刷题——415. 字符串相加

    题目描述 给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和. 提示: num1 和num2 的长度都小于 5100 num1 和num2 都只包含数字 0-9 num1 和num2 ...

最新文章

  1. nginx+tomcat,http强制跳转https后的error_page配置!【原创】
  2. linux下多路复用模型之Select模型
  3. linux 以太网转wifi,LINUX-网络 - (以太网和WIFI无线)
  4. 面试了3个 85前 的嵌入式软件工程师
  5. 【技巧】搜狗输入法特殊技巧
  6. docker 日志_解决docker容器日志导致主机磁盘空间满了的情况
  7. 【转载】MySQL -- SET NAMES utf8
  8. Java常见面试题之HashSet如何检查重复
  9. seaborn使用boxplot函数可视化箱图并基于分组均值或者中位数进行箱图升序(ascending)排序(Sort Boxplots in Ascending Order with Python)
  10. java查询城市区号_城市查区号示例代码
  11. li标签中,img居中显示
  12. 联想怎么进入linux界面,联想(Lenovo)为何重返Linux桌面?
  13. 如何防范动态调试(Anti-Debug)(SoftICE篇)
  14. 基于51单片机的秒表设计
  15. 高新技术企业认定中科技成果转化数量的认定
  16. 设置美团用户cookie实现用户登录
  17. linux Ubuntu 安装的搜狗双拼输入法只有五笔解决办法附安装教程
  18. Android APP跳转微信小程序和APP跳转支付宝小程序传参
  19. FTP连接时出现“227 Entering Passive Mode” 的解决方法
  20. matlab 多子图共x轴

热门文章

  1. POJ - 3700 Missile Defence System.(dfs+最优性剪枝)
  2. 鸿蒙系统发红包,鸿蒙修真录红包版
  3. Uva536 Tree Recovery二叉树重建(先序和中序确定二叉树,后序输出)
  4. php serialize mysql_php 序列化(serialize)格式详解
  5. 椭圆中心到椭圆切线的距离
  6. SPOJ3273(Treap)
  7. 数塔问题和最长上升子序列问题
  8. UDT协议实现分析——UDT初始化和销毁
  9. Chromium Android开发的Eclipse配置
  10. MySQL 中存储时间的最佳实践