415. Add Strings 计算两个数字字符串的和
来源:互联网 发布:weka java api文档 编辑:程序博客网 时间:2024/06/09 14:59
Given two non-negative integers num1 and num2 represented as string, return the sum of num1 and num2.
Note:
1. The length of both num1 and num2 is < 5100.
2. Both num1 and num2 contains only digits 0-9.
3. Both num1 and num2 does not contain any leading zero.
4. You must not use any built-in BigInteger library or convert the inputs to integer directly.
class Solution {public: string addStrings(string num1, string num2) { int len1 = num1.size(); int len2 = num2.size(); if (len1 <= 0 && num2.size() <= 0) return ""; else if (len1 <= 0) return num2; else if (len2 <= 0) return num1; else { string result = ""; //记录结果,将从个位开始计算的结果依次添加到后边,因而最后需要将前后翻转 int c = 0;//每个位上的进位 int sum; int minlen = min(len1, len2); int i = len1 - 1; int j = len2 - 1; while (minlen > 0) { sum = c + (num1[i] - '0') + (num2[j] - '0');//本位上的和等于两个家数在本位上的数字与上一位的进位之和 c = sum / 10;//计算本位上的进位 result += sum % 10 + '0';//计算本位上除了进位之后的个位数,直接添加到结果的后面 i--; j--; minlen--; } // 当num1较长 while (i != -1) { sum = c + (num1[i] - '0'); c = sum / 10; result += sum % 10 + '0'; i--; } // 当num2较长 while (j != -1) { sum = c + (num2[j] - '0'); c = sum / 10; result += sum % 10 + '0'; j--; } // 处理最后的进位 if (i == -1 && j == -1 && c != 0) result += c + '0'; reverse(result.begin(), result.end()); return result; } }};
阅读全文
0 0
- 415. Add Strings 计算两个数字字符串的和
- [LeetCode]415. Add Strings(计算两个字符串表示的数字的和)
- 415. Add Strings (计算由两个字符串表示的数字相加之和)
- LeetCode425——Add Strings(两个字符串中的数字相加(十进制或二进制),输出字符串形式的结果)
- 415. Add Strings--两个用字符串表示的数字相加
- leetcode 415. Add Strings字符串加和(C++和Java)
- LeetCode 415. Add Strings题解 字符串加和
- leetcode 415. Add Strings 字符串加法
- Add Strings:字符串相加
- c计算数字字符串的和
- c++计算数字字符串的和
- Multiply Strings 两个字符串代表数字相乘@LeetCode
- Multiply Strings 两个字符串的乘法
- 计算两个数字的最小公倍数
- 输入任意两个整数数字,计算这两个数字间能被3整除的数的和
- leetcode_415. Add Strings 字符串表示的大数相加
- Leetcode 415. Add Strings 字符串加法 解题报告
- LeetCode 415. Add Strings (大数加法,字符串处理)
- UnityShader入门精要学习笔记(七):基础纹理之单张纹理
- centos7下redis主从复制安装
- LVS(Linux Virtual Server)
- 表达式中的陷阱
- OCR开源库(字幕区域定位和字幕识别):github
- 415. Add Strings 计算两个数字字符串的和
- UE4_网络项目01
- KD tree算法(1)-简介&构建KD tree
- redis列表类型list如何一次返回多个值并删除这些值
- 规则引擎选型及应用 邴越 2017-04-27 16:31:17 浏览614 评论0 HTTPS 模块 配置 string exception void input 规则引擎 摘要: 规则引擎具体执
- ADB环境配置和常用命令笔记
- 【量亿数据-金融数据】如何教孩子理财《小狗钱钱》
- 【后缀自动机】SPOJ(LCS2)[Longest Common Substring II]题解
- 猪八戒网毅然断腕,平台新政力推品质服务