[Leetcode] - 記事の配列--No.16--、最寄りの3の数

トピック:

n個の整数と目標NUMSターゲットを含むアレイを考えます。NUMSは三つの整数を特定し、そのような彼らの最も近いことをターゲットにしています。3つの数字とリターン。各グループは、入力のみが唯一の答えがあることを前提としてい

出典:滞在ボタン(LeetCode)
リンクします。https://leetcode-cn.com/problems/3sum-closestは
すべてのネットワークからの控除が著作権を保有。商業転載は、ソースを明記してください許可公式、非商用の転載をご連絡ください。

最初の答え:

クラスソリューション{
     公共 のint threeSumClosest(INT [] NUMS、INT ターゲット){
         int型のlen = nums.length。
        
        Arrays.sort(NUMS)。
        もし(LEN <3)リターン -1 INT ANS = NUMS [0] + NUMS [1] + NUMS [2 ]。
        INTが I = 0; iが<lenを- 2; I ++ ){
             int型 L = I + 1 INT R = LEN - 1 一方(L < R){
                 int型の和= NUMS [I] + NUMS [L] +NUMS [R]。
                もし(Math.abs(ターゲット-和)<Math.abs(ターゲット- ANS)){ 
                    ANS = 和。
                } 
                もし(合計< ターゲット){ 
                    L ++ 
                } 
                そう であれば(和> ターゲット){ 
                    R - 
                } 
                {
                     戻りANS。
                } 
            } 
        } 
        
        戻りANS。
    } 
}

 

おすすめ

転載: www.cnblogs.com/chenyun-/p/12288041.html