public class Solution
{
public string AddStrings(string num1, string num2)
{
//判断num1和num2的长度,进行对齐
if (num1.Length < num2.Length)
{
//将num1前补0
var zerocount = num2.Length - num1.Length;
StringBuilder sb = new StringBuilder();
for (int i = ; i < zerocount; i++)
{
sb.Append("");
}
num1 = sb.ToString() + num1;
}
else
{
var zerocount = num1.Length - num2.Length;
StringBuilder sb = new StringBuilder();
for (int i = ; i < zerocount; i++)
{
sb.Append("");
}
num2 = sb.ToString() + num2;
} //对齐之后,从低位到高位依次进行加运算 var step = ;//进位 var list1 = num1.Reverse().ToList();
var list2 = num2.Reverse().ToList();
StringBuilder sb2 = new StringBuilder();
for (int i = ; i < list1.Count(); i++)
{
var n1 = Convert.ToInt32(list1[i].ToString());
var n2 = Convert.ToInt32(list2[i].ToString()); var n = n1 + n2 + step;
sb2.Append((n % ).ToString());
if (n >= )
{
step = ;
}
else
{
step = ;
}
} if (step == )
{
sb2.Append("");
} var list = sb2.ToString().Reverse(); StringBuilder sb3 = new StringBuilder();
foreach (var c in list)
{
sb3.Append(c);
} var result = sb3.ToString();
return result;
}
}

https://leetcode.com/problems/add-strings/#/description

leetcode415的更多相关文章

  1. 【LeetCode415】Add Strings

    题目描述: 解决思路: 此题较简单,和前面[LeetCode67]方法一样. Java代码: public class LeetCode415 { public static void main(St ...

  2. [Swift]LeetCode415. 字符串相加 | Add Strings

    Given two non-negative integers num1 and num2 represented as string, return the sum of num1 and num2 ...

  3. 【LeetCode67】 Add Binary

    题目描述: 解题思路: 此题的思路简单,下面的代码用StringBuilder更加简单,注意最后的结果要反转过来.[LeetCode415]Add Strings的解法和本题一模一样. java代码: ...

随机推荐

  1. hdu2602 DP (01背包)

    题意:有一个容量 volume 的背包,有一个个给定体积和价值的骨头,问最多能装价值多少. 经典的 01 背包问题不谈,再不会我就要面壁了. 终于有一道题可以说水过了 ……心好累 #include&l ...

  2. shell学习笔记汇总

    1.shell脚本中函数使用 函数定义在前,调用在后,顺序反了就没有效果了.函数调用为:函数名 参数列表 函数内部通过以下变量访问函数的参数:shell脚本函数中: $0: 这个脚本的名字 $n: 这 ...

  3. adnanh webhook 框架 hook rule

    adnanh webhook 支持一系列的逻辑操作 AND 所有的条件都必须匹配 { "and": [ { "match": { "type" ...

  4. Jersey RESTful Web服务

    Jersey是一个RESTFUL请求服务JAVA框架,与常规的JAVA编程使用的struts框架类似,它主要用于处理业务逻辑层.与Struts类似,它同样可以和hibernate,spring框架整合 ...

  5. bat生成vbs通过注册表禁用或启用USB端口

    在网上找到的资料,经过自己简单的修改调整,通过bat生成vbs文件,由vbs文件操作注册表的键值,达到启用和禁用USB端口的目的. 当然,你也可以完全使用BAT操作注册表来完成修改注册表的键值的目的, ...

  6. Tomcat7 catalina.out 日志分割

    Tomcat7 catalina.out 日志分割 安装过程如下: 1.下载(最新版本)  cronolog-1.6.2.tar.gz 2.解压缩     # tar zxvf cronolog-1. ...

  7. commonJS规范基本结构

    commonJS规范:使用 module.exports 和 require ,基本结构如下: // foo.js 输出模块 module.exports = function(x) { consol ...

  8. Oracle查看及修改Oracle最大连接数

    Oracle查看及修改Oracle最大连接数 .查询oracle的最大连接数: select * from v$parameter where name='processes'; .oracle 11 ...

  9. Eclipse设置相同变量背景色高亮显示

    在Eclipse中,鼠标选中或者光标移动到java类的变量名时,相同变量会被标识显示(设置背景色高亮), 并且侧边滚动条会标出变量的位置, 查找变量十分方便. 1.相同变量标识高亮显示: Window ...

  10. bzoj 3978: [WF2012]Fibonacci Words

    Description 斐波那契01字符串的定义如下 F(n) = { 0  if n = 0 1  if n = 1 F(n-1)+F(n-2) if n >= 2 } 这里+的定义是字符串的 ...