LeetCode.908-最小差值 1(Smallest Range I)

這是悅樂書的第348次更新,第372篇原創(chuàng)

01 看題和準(zhǔn)備

今天介紹的是LeetCode算法題中Easy級(jí)別的第213題(順位題號(hào)是908)。給定一個(gè)整數(shù)數(shù)組A,對(duì)于每個(gè)整數(shù)A[i],我們可以選擇任何x,其中-K <= x <= K,并將x的值加到A[i]上。在這個(gè)過程之后,A變成了新數(shù)組B.

返回B的最大值和B的最小值之間的最小可能差值。例如:

輸入:A = [1],K = 0
輸出:0
說明:B = [1]

輸入:A = [0,10],K = 2
輸出:6
說明:B = [2,8]

輸入:A = [1,3,6],K = 3
輸出:0
說明:B = [3,3,3]或B = [4,4,4]

注意

  • 1 <= A.length <= 10000

  • 0 <= A [i] <= 10000

  • 0 <= K <= 10000

02 解題

題目要求我們計(jì)算B數(shù)組中最大值和最小值的最小可能差值,而B數(shù)組是由A數(shù)組中每一個(gè)元素加上K后得到的。

要想最大值和最小值的差值最小,即最大值、最小值無限接近,最理想狀態(tài)是最大值等于最小值,其差值為0。

所以,我們只需要找到A里面的最大值、最小值,將最大值減去x的最大值,即K,將最小值加上x的最大值,讓最大值、最小值的數(shù)值更加接近。

另外,最大值和最小值的最小可能差值是不能小于0的,最小只能到0。

public int smallestRangeI(int[] A, int K) {
    int max = -1, min = 10001;
    for (int num : A) {
        if (num > max) {
            max = num;
        }
        if (num < min) {
            min = num;
        }
    }
    if ((max-K)-(min+K) < 0) {
        return 0;
    }
    return (max-K)-(min+K);
}


03 小結(jié)

算法專題目前已連續(xù)日更超過六個(gè)月,算法題文章216+篇,公眾號(hào)對(duì)話框回復(fù)【數(shù)據(jù)結(jié)構(gòu)與算法】、【算法】、【數(shù)據(jù)結(jié)構(gòu)】中的任一關(guān)鍵詞,獲取系列文章合集。

以上就是全部?jī)?nèi)容,如果大家有什么好的解法思路、建議或者其他問題,可以下方留言交流,點(diǎn)贊、留言、轉(zhuǎn)發(fā)就是對(duì)我最大的回報(bào)和支持!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 在C語言中,五種基本數(shù)據(jù)類型存儲(chǔ)空間長(zhǎng)度的排列順序是: A)char B)char=int<=float C)ch...
    夏天再來閱讀 4,060評(píng)論 0 2
  • 1. 關(guān)于診斷X線機(jī)準(zhǔn)直器的作用,錯(cuò)誤的是()。 (6.0 分) A. 顯示照射野 B. 顯示中心線 C. 屏蔽多...
    我們村我最帥閱讀 11,447評(píng)論 0 5
  • 專業(yè)考題類型管理運(yùn)行工作負(fù)責(zé)人一般作業(yè)考題內(nèi)容選項(xiàng)A選項(xiàng)B選項(xiàng)C選項(xiàng)D選項(xiàng)E選項(xiàng)F正確答案 變電單選GYSZ本規(guī)程...
    小白兔去釣魚閱讀 10,589評(píng)論 0 13
  • <center>#1 Two Sum</center> link Description:Given an arr...
    鐺鐺鐺clark閱讀 2,355評(píng)論 0 3
  • 物理學(xué)電路中有“串聯(lián)”與“并聯(lián)”的概念,把這兩個(gè)概念運(yùn)用到工作和生活中很有意思。如果兩項(xiàng)任務(wù)A與B之間有順序關(guān)系,...
    笑長(zhǎng)2016閱讀 310評(píng)論 0 0

友情鏈接更多精彩內(nèi)容