首页 > 代码库 > [LeetCode]43 Multiply Strings
[LeetCode]43 Multiply Strings
https://oj.leetcode.com/problems/multiply-strings/
http://blog.csdn.net/linhuanmars/article/details/20967763
import java.math.BigInteger; public class Solution { public String multiply(String num1, String num2) { // Solution B: // return multiply_Cheating(num1, num2); // Solution A: return multiply_Char(num1, num2); } //////////////////////////////// // Solution A: // private String multiply_Char(String num1, String num2) { if (num1.equals("0") || num2.equals("0")) return "0"; StringBuilder sb = new StringBuilder(); int num = 0; for(int i = num1.length() + num2.length() ; i > 0 ; i --) { for(int j = Math.min(i - 1, num1.length()) ; j > 0 ; j --) { if(i - j <= num2.length()) { num += (int)(num1.charAt(j - 1) - ‘0‘) * (int)(num2.charAt(i - 1 - j) - ‘0‘); } } if(i != 1 || num > 0) sb.append(num % 10); num = num / 10; } return sb.reverse().toString(); } //////////////////////////////// // Solution B: Cheating // private String multiply_Cheating(String num1, String num2) { BigInteger a = new BigInteger(num1); BigInteger b = new BigInteger(num2); return a.multiply(b).toString(); } }
[LeetCode]43 Multiply Strings
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。