415. Add Strings
来源:互联网 发布:十大网络主播评选排名 编辑:程序博客网 时间:2024/06/06 08:32
题目
Given two non-negative integers num1 andnum2 represented as string, return the sum ofnum1 and num2.
Note:
- The length of both num1 andnum2 is < 5100.
- Both num1 andnum2 contains only digits 0-9.
- Both num1 andnum2 does not contain any leading zero.
- You must not use any built-in BigInteger library orconvert the inputs to integer directly.
public class Solution { public String addStrings(String num1, String num2) { StringBuilder sb = new StringBuilder(); int len1 = num1.length(); int len2 = num2.length(); int mark = 0; int i = 0; while(i < len1 || i < len2){ int n1 = (i < len1) ? num1.charAt(len1 - i - 1) - '0' : 0; int n2 = (i < len2) ? num2.charAt(len2 - i - 1) - '0' : 0; int num = (n1 + n2 + mark)%10; sb.append(num); mark = (n1 + n2 + mark)/10; i++; } return (mark == 0) ? sb.reverse().toString() : sb.append(mark).reverse().toString(); }}解法分析:使用stringbulider代替string,提高字符串操作速度。使用append()最后再reverse(),而不是Insert(0, num),因为插入的时间复杂度为o(n^2),而追加再反转的复杂度为o(n)。
0 0
- 415. Add Strings
- Leetcode-415. Add Strings
- 415. Add Strings
- 415. Add Strings
- 415. Add Strings
- 415. Add Strings
- LeetCode 415. Add Strings
- 415. Add Strings
- 415. Add Strings
- [LeetCode]--415. Add Strings
- LeetCode 415. Add Strings
- LeetCode 415. Add Strings
- 415. Add Strings
- LeetCode 415. Add Strings
- 415. Add Strings
- 415. Add Strings
- 415. Add Strings(unsolved)
- leetcode 415. Add Strings
- 乘法逆元(对于非质数的乘法逆元)
- 复习java基础------>java的静态绑定和动态绑
- Detect Capital
- 关于vim使用的笔记
- 基于DDD的.NET开发框架ABP实例,多租户 (Sass)应用程序,采用.NET MVC, Angularjs, EntityFramework-介绍
- 415. Add Strings
- android与服务器交互总结(json,post,xUtils,Volley,Gson)
- 让tabbar自动隐藏
- 重构之提炼方法
- HDU2094 产生冠军
- 优化myschool 第九章
- http://www.linuxidc.com/Linux/2013-07/86999.htm
- Java代理机制
- ACM之路