leetcode910. 最小差值 II(贪心)
生活随笔
收集整理的這篇文章主要介紹了
leetcode910. 最小差值 II(贪心)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
給定一個整數(shù)數(shù)組 A,對于每個整數(shù) A[i],我們可以選擇 x = -K 或是 x = K,并將 x 加到 A[i] 中。
在此過程之后,我們得到一些數(shù)組 B。
返回 B 的最大值和 B 的最小值之間可能存在的最小差值。
示例 1:
輸入:A = [1], K = 0
輸出:0
解釋:B = [1]
代碼
class Solution {public int smallestRangeII(int[] A, int K) {for(int c=0;c<A.length;c++)//將所以元素先加上k{A[c]+=K;}Arrays.sort(A);int min=A[0],max=A[A.length-1];int res=max-min;for(int c=A.length-1;c>0;c--){A[c]-=2*K;max= Math.max(A[A.length-1],A[c-1]);//最大值只能從當(dāng)前位置的前一位或者最右一位產(chǎn)生min= Math.min(min,A[c]);res=Math.min(res,max-min);}return res;} } 創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的leetcode910. 最小差值 II(贪心)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: leetcode1007. 行相等的最少
- 下一篇: 女人梦到黑猫暗示什么