演算法十六 最接近的三數之和

2021-10-25 15:32:50 字數 1144 閱讀 4222

給定乙個包括 n 個整數的陣列 nums 和 乙個目標值 target。找出 nums 中的三個整數,使得它們的和與 target 最接近。返回這三個數的和。假定每組輸入只存在唯一答案。

示例:輸入:nums = [-1,2,1,-4], target = 1

輸出:2

解釋:與 target 最接近的和是 2 (-1 + 2 + 1 = 2) 。

檢查例子:

輸入:1,1,1,0 100

輸入:1,1,1,0 -100

最接近三數之和思想與三數之和思想相似,只不過在一些操作細節上需要注意一些。如下是該演算法相較於三數之和演算法的區別點:

//count_num1記錄三數之和的count_num與目標值之間的距離。

count_num1=count_num-target;

//如果|count_num1|小於|count_3-target|則count_num=count_num否則count_num=count_3。

if(count_num1<0)

else

public

class

day_21

int y=i+1;

for(

int j = nums.length-

1; j >y ;

)int count_3=nums[i]

+nums[j]

+nums[y];if

(count_3else}if

(count_3>target)

else}if

(count_3==target)}}

return count_num;

}public

static

void

main

(string[

] args)

system.out.

print

("輸入目標值:");

int target=input.

nextint()

; system.out.

println

(threesumclosest

(nums,target));

}}

演算法 最接近的三數之和

題目 給定乙個包括 n 個整數的陣列 nums 和 乙個目標值 target。找出 nums 中的三個整數,使得它們的和與 target 最接近。返回這三個數的和。假定每組輸入只存在唯一答案。示例 輸入 nums 1,2,1,4 target 1 輸出 2 解釋 與 target 最接近的和是 2 ...

最接近的三數之和

給定乙個包括 n 個整數的陣列 nums 和 乙個目標值 target。找出 nums 中的三個整數,使得它們的和與 target 最接近。返回這三個數的和。假定每組輸入只存在唯一答案。例如,給定陣列 nums 1,2,1,4 和 target 1.與 target 最接近的三個數的和為 2.1 2...

最接近的三數之和

給定乙個包括 n 個整數的陣列nums和 乙個目標值target。找出nums中的三個整數,使得它們的和與target最接近。返回這三個數的和。假定每組輸入只存在唯一答案。例如,給定陣列 nums 1,2,1,4 和 target 1.與 target 最接近的三個數的和為 2.1 2 1 2 pu...