亚欧色一区w666天堂,色情一区二区三区免费看,少妇特黄A片一区二区三区,亚洲人成网站999久久久综合,国产av熟女一区二区三区

  • 發布文章
  • 消息中心
點贊
收藏
評論
分享
原創(chuang)

整數反轉-算法學習

2023-07-13 06:05:59
7
0

題目詳情:
給(gei)你一個 32 位的有(you)符號整數(shu) x ,返(fan)回(hui)將 x 中的數(shu)字(zi)部分反轉后的結果。

如果反轉后(hou)整數超過 32 位的(de)有符號(hao)整數的(de)范圍 [−231,  231 − 1] ,就返回 0。

假設環境不允許存儲 64 位整數(有符號(hao)或無(wu)符號(hao))。

示例:
輸入:x = 123
輸出:321

解題思路:

使用循環將給定整數 x 的數字部分進行反轉。首先定義一個變量 result 來(lai)存儲(chu)反轉后的結果(guo),初始值為 0。

然后不斷取 x 的個位數字,并將其添加到 result 中。具體做法是,每次循環通過取余操作 x % 10 獲取 x 的個位數字,并將其加到 result 中。同時需要更新 x,將已經處理過的個位數字去除,即通過整除操作 Math.trunc(x / 10)

在每次循環中都判斷反轉后的整數 result 是否超出了有符號 32 位整(zheng)數的(de)范圍。如果是,則直(zhi)接返回 0。

最后,函數返回反轉后的結果 result


代碼實現:

function reverse(x) {
    let result = 0;
    while (x !== 0) {
        // 取出 x 的個位數字
        const digit = x % 10;
        // 將個位數字添加到結果中
        result = result * 10 + digit;

        // 判斷反轉后的整數是否超出范圍
        if (result < Math.pow(-2, 31) || result > Math.pow(2, 31) - 1) {
            return 0;
        }

        // 更新 x,去除已經處理的個位數字
        x = Math.trunc(x / 10);
    }

    return result;
}

// 示例輸入
const x = 123;

// 調用函數獲取反轉后的結果
const result = reverse(x);

// 輸出結果
console.log(result);
0條評論
作者已關閉評論
t****m
98文(wen)章數
1粉(fen)絲數
t****m
98 文章 | 1 粉絲
t****m
98文章數
1粉(fen)絲數
t****m
98 文章(zhang) | 1 粉絲
原創

整數反轉-算法學習

2023-07-13 06:05:59
7
0

題目詳情:
給你一個(ge) 32 位的(de)有符號整數 x ,返回將(jiang) x 中的(de)數字部分反轉后(hou)的(de)結果。

如果(guo)反(fan)轉后整數(shu)超過 32 位的有符號整數(shu)的范(fan)圍 [−231,  231 − 1] ,就返回 0。

假設環(huan)境不允許(xu)存儲(chu) 64 位(wei)整數(有符號或無符號)。

示例:
輸入:x = 123
輸出:321

解題思路:

使用循環將給定整數 x 的數字部分進行反轉。首先定義一個變量 result 來存儲(chu)反轉后的結(jie)果,初始值(zhi)為 0。

然后不斷取 x 的個位數字,并將其添加到 result 中。具體做法是,每次循環通過取余操作 x % 10 獲取 x 的個位數字,并將其加到 result 中。同時需要更新 x,將已經處理過的個位數字去除,即通過整除操作 Math.trunc(x / 10)

在每次循環中都判斷反轉后的整數 result 是(shi)否超出(chu)了有符(fu)號 32 位整數的范圍。如果是(shi),則直接(jie)返(fan)回 0。

最后,函數返回反轉后的結果 result


代碼實現:

function reverse(x) {
    let result = 0;
    while (x !== 0) {
        // 取出 x 的個位數字
        const digit = x % 10;
        // 將個位數字添加到結果中
        result = result * 10 + digit;

        // 判斷反轉后的整數是否超出范圍
        if (result < Math.pow(-2, 31) || result > Math.pow(2, 31) - 1) {
            return 0;
        }

        // 更新 x,去除已經處理的個位數字
        x = Math.trunc(x / 10);
    }

    return result;
}

// 示例輸入
const x = 123;

// 調用函數獲取反轉后的結果
const result = reverse(x);

// 輸出結果
console.log(result);
文章來自個人專欄
文(wen)章 | 訂閱
0條評論
作者已關閉評論
作者已關閉評論
0
0