zoukankan      html  css  js  c++  java
  • 给定两个以字符串形式表示的非负整数num1 和 num2 返回值为num1 * num2的乘积(js实现)

    实现一个求乘积的算法,比如输入('10','10'),返回值为100,主要思路是将传入字符串分隔为数组,双重for循环遍历,先判断个位数,是否需要进位,追加到新数组中,再去进行10进制转换;

    function multiplication(s,t){
        if(!s.length || !t.length) return;
        if (s.charAt(0) == 0 || t.charAt(0) == 0) {
            return '0'
        }
        let newS = s.split(''), 
            newT = t.split(''),// 12 [1,2]
            arr = [];
            console.log(newS)
        for(let i = 0; i < newS.length; i++){
            for(let j = 0; j < newT.length; j++){ 
                arr[i + j] ? (arr[i + j] += newS[i] * newT[j]) : (arr[i + j] = newS[i] * newT[j]);
            }
        }
        console.log(arr)
        for (let index = arr.length; index > 0; index--) {
            if (arr[index] > 9) {
                arr[index - 1] += (arr[index] / 10 | 0)
                arr[index] %= 10
            }
        }
        let str = arr.join('')
        console.log(str)
        return str
    }
    multiplication('10','10') //100
  • 相关阅读:
    Mysql自定义函数总结
    MySQL的基本函数
    Mysql存储过程总结
    Mysql触发器总结
    Mysql索引总结(二)
    Mysql索引总结(一)
    Mysql游标使用
    别人的博客,留待后看
    mysql外键约束总结
    mysql视图总结
  • 原文地址:https://www.cnblogs.com/fmixue/p/15149370.html
Copyright © 2011-2022 走看看