美文网首页
2018-12-01 字符串相乘

2018-12-01 字符串相乘

作者: 天际神游 | 来源:发表于2018-12-01 10:04 被阅读0次

题目:

字符串相乘

解法:

模拟手算乘法的过程, 首先, 我先把字符串计算结果从个位十位百位的从左往右排列, 计算完然后输出字符串的时候又从右往左遍历.

public String multiply(String num1, String num2) {
    // num1乘以num2不会超过他们两个的长度
    int len1 = num1.length();
    int len2 = num2.length();

    // 个位, 十位, 百位...
    int[] result = new int[len1 + len2];

    for (int i = len1 - 1; i >= 0; i--) {
        for (int j = len2 - 1; j >= 0; j--) {
            int n1 = num1.charAt(i) - '0';
            int n2 = num2.charAt(j) - '0';
            // 需要倒转一下,保持 个位, 十位, 百位这样的顺序
            result[len1 + len2 - 2 - (i + j)] += n1 * n2;
        }
    }

    // 所得的结果需要进位, 从个位开始加
    int carry = 0;
    for (int i = 0; i < result.length; i++) {
        result[i] += carry;
        // 求进位
        carry = result[i] / 10;
        // 得数位上的数
        result[i] = result[i] % 10;
    }

    // 转化成字符串
    StringBuilder sb = new StringBuilder();
    boolean initFlag = true;
    for (int i = result.length - 1; i >= 0; i--) {
        // 从高位向低位append
        if ((initFlag == true) && (result[i] == 0)) {
            continue;
        }
        initFlag = false;
        sb.append(result[i]);
    }
    return sb.length() == 0 ? "0" : sb.toString();
}

相关文章

  • 2018-12-01 字符串相乘

    题目: 字符串相乘 解法: 模拟手算乘法的过程, 首先, 我先把字符串计算结果从个位十位百位的从左往右排列, 计算...

  • Python3的字符串使用

    字符串可以相加,相乘

  • 字符串相乘

    题目 Given two non-negative integers num1 and num2 represen...

  • 字符串相乘

    给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示...

  • 字符串相乘

    题目描述:给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的...

  • 字符串相乘

    给定两个以字符串形式表示的非负整数 num1 和 num2 ,返回 num1 和 num2 的乘积,它们的乘积也表...

  • 字符串相乘

    字符串相乘   在 Python 语言中,算术运算符的“+”和“*”是可以对字符串进行操作的,如字符串拼接(str...

  • LeetCode:字符串相乘

    字符串相乘 - LeetCode[https://leetcode-cn.com/problems/multipl...

  • python的数据类型——字符串

    生成字符串 Python中可以使用一对单引号''或者双引号""生成字符串。 简单操作 加法: 字符串与数字相乘: ...

  • 字符串 大数相乘

    https://leetcode-cn.com/explore/interview/card/bytedance/...

网友评论

      本文标题:2018-12-01 字符串相乘

      本文链接:https://www.haomeiwen.com/subject/zudlcqtx.html