成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

LeetCode29.兩數(shù)相除 JavaScript

shiyang6017 / 1979人閱讀

摘要:給定兩個整數(shù),被除數(shù)和除數(shù)。將兩數(shù)相除,要求不使用乘法除法和運算符。返回被除數(shù)除以除數(shù)得到的商。示例輸入輸出示例輸入輸出說明被除數(shù)和除數(shù)均為位有符號整數(shù)。假設(shè)我們的環(huán)境只能存儲位有符號整數(shù),其數(shù)值范圍是。

給定兩個整數(shù),被除數(shù) dividend和除數(shù) divisor。將兩數(shù)相除,要求不使用乘法、除法和 mod 運算符。

返回被除數(shù) dividend 除以除數(shù) divisor 得到的商。

示例 1:

輸入: dividend = 10, divisor = 3
輸出: 3

示例 2:

輸入: dividend = 7, divisor = -3
輸出: -2

說明:
被除數(shù)和除數(shù)均為 32 位有符號整數(shù)。
除數(shù)不為 0
假設(shè)我們的環(huán)境只能存儲 32 位有符號整數(shù),其數(shù)值范圍是 [?2^31, 2^31 ? 1]。本題中,如果除法結(jié)果溢出,則返回 2^31 ? 1。

答案參考:

/**
 * @param {number} dividend
 * @param {number} divisor
 * @return {number}
 */

var divide = function (dividend, divisor) {
    let result = 0, sign = 1, mul = 1;
    if ((dividend > 0 && divisor < 0) || (dividend < 0 && divisor > 0)) {
        sign = -1;
    }
    dividend = Math.abs(dividend);
    divisor = Math.abs(divisor);
 
    divisor2 = divisor;
 
    while (dividend >= divisor2) {
        if (dividend > (divisor2 + divisor2)) {
            divisor2 += divisor2;
            mul += mul;
        }
        dividend -= divisor2;
        result += mul;
    }
    while (dividend >= divisor) {
        dividend -= divisor;
        result += 1;
    }
 
    if (sign == 1 && result > (Math.pow(2, 31) - 1)) {
        return Math.pow(2, 31) - 1;
    } else if (sign == -1 && result < -Math.pow(2, 31)) {
        return -Math.pow(2, 31);
    }
    if (sign == 1) {
        return result;
    } else {
        return -result;
    }
};

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/101768.html

相關(guān)文章

  • leetcode29.兩數(shù)相除

    摘要:原題給定兩個整數(shù),被除數(shù)和除數(shù)。將兩數(shù)相除,要求不使用乘法除法和運算符。返回被除數(shù)除以除數(shù)得到的商。右移位,等價于,除以的次方。當(dāng)除以時,結(jié)果相較于除數(shù)會非常的小。我們使用循環(huán)逐漸減少右移的位數(shù),逐漸逼近除數(shù),當(dāng)時等于,大于等于。 showImg(https://segmentfault.com/img/remote/1460000020181895); 原題 給定兩個整數(shù),被除數(shù)?d...

    googollee 評論0 收藏0
  • 6-9月技術(shù)文章匯總

    摘要:分布式的管理和當(dāng)我在談?wù)摷軜?gòu)時我在談啥狀態(tài)碼詳解無狀態(tài)協(xié)議和請求支持哪些方法分層協(xié)議棧有哪些數(shù)據(jù)結(jié)構(gòu)運用場景說說你常用的命令為什么要有包裝類面向?qū)ο蟮奶卣魇巧妒巧队惺裁春锰幭到y(tǒng)設(shè)計工程在線診斷系統(tǒng)設(shè)計與實現(xiàn)索引背后的數(shù)據(jù)結(jié)構(gòu)及算法原理軟技能 HTTP 【HTTP】分布式session的管理 【HTTP】Cookie和Session 【HTTP】當(dāng)我在談?wù)揜estFul架構(gòu)時我在談啥?...

    miya 評論0 收藏0
  • 兩數(shù)相除——不允許使用高級運算

    摘要:兩數(shù)相除不允許使用高級運算實現(xiàn)兩整數(shù)相除,不允許使用乘法除法和取余運算。如果左移一位的除數(shù)過大,除數(shù)還原。注意處理除法運算中正負(fù)號的問題。代碼本題以及其它題目代碼地址地址 兩數(shù)相除——不允許使用高級運算 Divide Two Integers 實現(xiàn)兩整數(shù)相除,不允許使用乘法、除法、和取余運算。 如果結(jié)果溢出(int范圍為-2147483648 ~ 2147483647),返回MAX_...

    _Zhao 評論0 收藏0
  • LeetCode2.兩數(shù)相關(guān) JavaScript

    摘要:兩數(shù)相加給定兩個非空鏈表來表示兩個非負(fù)整數(shù)。位數(shù)按照逆序方式存儲,它們的每個節(jié)點只存儲單個數(shù)字。你可以假設(shè)除了數(shù)字之外,這兩個數(shù)字都不會以零開頭。 LeetCode2.兩數(shù)相加 JavaScript 給定兩個非空鏈表來表示兩個非負(fù)整數(shù)。位數(shù)按照逆序方式存儲,它們的每個節(jié)點只存儲單個數(shù)字。將兩數(shù)相加返回一個新的鏈表。你可以假設(shè)除了數(shù)字 0 之外,這兩個數(shù)字都不會以零開頭。示例: 輸入:(...

    gghyoo 評論0 收藏0
  • LeetCode1.兩數(shù)之和JavaScript

    摘要:兩數(shù)之和給定一個整數(shù)數(shù)組和一個目標(biāo)值,找出數(shù)組中和為目標(biāo)值的兩個數(shù)。你可以假設(shè)每個輸入只對應(yīng)一種答案,且同樣的元素不能被重復(fù)利用。實例給定因為所以返回答案參考執(zhí)行 LeetCode1.兩數(shù)之和JavaScript 給定一個整數(shù)數(shù)組和一個目標(biāo)值,找出數(shù)組中和為目標(biāo)值的兩個數(shù)。你可以假設(shè)每個輸入只對應(yīng)一種答案,且同樣的元素不能被重復(fù)利用。實例: 給定 nums = [2, 7, 11, 1...

    Scliang 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<