最接近的三數之和

2021-10-01 01:35:55 字數 736 閱讀 6878

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

例如:

給定陣列 nums = [-1,2,1,-4], 和 target = 1.

與 target 最接近的三個數的和為 2. (-1 + 2 + 1 = 2).

先給陣列排序,用 i 記錄遍歷陣列的第 i 趟;

每一趟採用前後指標的方法遍歷陣列,記錄三個數之和為sum = nums[i] + nums[start] + nums[end];

用 ans 來記錄最接近target的三數之和,在遍歷的過程中隨時更新,更新的條件是sum的值更接近target;

在每一趟遍歷中,若sum>target,start++;

若sum若sum==target,return ans;(退出的其中乙個條件);

若全部遍歷完了,return ans.

}}通過測試用例:

最接近的三數之和

給定乙個包括 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...

最接近的三數之和

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