大数相加
2015-10-11 00:00
204 查看
public class BigNumAdd {
public static void main(String[] args) { String num1 = "92345"; String num2 = "92345"; String sum = bigNumberAdd(num1, num2); System.out.print(sum); }
public static String bigNumberAdd(String f, String s) { char[] a = new StringBuffer(f).reverse().toString().toCharArray(); char[] b = new StringBuffer(s).reverse().toString().toCharArray(); int len = a.length > b.length ? a.length : b.length; int[] sum = new int[len + 1];
int inc = 0; for (int i = 0; i < len; i++) { int inta = i < a.length ? a[i] - '0' : 0; int intb = i < b.length ? b[i] - '0' : 0; inc = inc + inta + intb; sum[i] = inc % 10; inc /= 10; } if (inc == 1) sum[len] = 1;
boolean flag = true; StringBuffer sb = new StringBuffer(); for (int i = len; i >= 0; i--) { if (sum[i] == 0 && flag) continue; else flag = false; sb.append(sum[i]); }
return sb.toString();
}
}
相关文章推荐
- Eclipse替代ndk-gdb断点调试Android NDK程序
- java枚举之简要
- java之反射构造方法
- java反射之成员变量的反射
- swift中字符串截取方法(substring)
- Linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义
- opencv3中scharr滤波器
- 随便记录下内容
- mac上的终端里添加mysql命令
- Mac OS X 10.11下如何安装MySQLdb?
- Objective-c self的用法
- [ogre] ogre遇到一些小问题
- apktool反编译
- android反编译
- 关于android4.4及以上版本无法恢复还原短信的问题记录与解决
- java 线程学习笔记(二)
- Oracle提高sql执行效率的心得建议
- ElyarAnwar的Android实战笔记---计算器(二) 分享是最好的记忆
- javaweb之生成微信二维码
- Docker 命令笔记