443 兩數之和 II

2021-09-22 20:10:44 字數 576 閱讀 2214

給一組整數,問能找出多少對整數,他們的和大於乙個給定的目標值。

樣例 1:

輸入: [2, 7, 11, 15], target = 24

輸出: 1

解釋: 11 + 15 是唯一的一對

樣例 2:

輸入: [1, 1, 1, 1], target = 1

輸出: 6

o(1) 額外空間以及 o(nlogn) 時間複雜度

思路:1、首先對陣列從小到大排序,count=0 用於統計對數

2、用兩個指標指向首尾,left=0, right=nums.length-1

3、若首尾指標對應數的和大於目標值target,則首尾指標中間的數跟nums[right]的和都大於目標值。 count += right-left;

此時,尾指標向左走一步right--

4、若首尾指標對應數的和小於等於目標值target,則首尾指標中間的數跟nums[left]的和都小於等於目標值,

此時,首指標向右走一步left--

兩數之和II

給定乙個已按照公升序排列 的有序陣列,找到兩個數使得它們相加之和等於目標數。函式應該返回這兩個下標值 index1 和 index2,其中 index1 必須小於 index2。說明 返回的下標值 index1 和 index2 不是從零開始的。你可以假設每個輸入只對應唯一的答案,而且你不可以重複使...

LeetCode167 兩數之和II

1.題目描述 給定乙個已按照公升序排列 的有序陣列,找到兩個數使得它們相加之和等於目標數。函式應該返回這兩個下標值 index1 和 index2,其中 index1 必須小於 index2。說明 返回的下標值 index1 和 index2 不是從零開始的。你可以假設每個輸入只對應唯一的答案,而且...

LeetCode 167 兩數之和II

題目 給定乙個已按照公升序排列 的有序陣列,找到兩個數使得它們相加之和等於目標數。函式應該返回這兩個下標值 index1 和 index2,其中 index1 必須小於 index2。說明 返回的下標值 index1 和 index2 不是從零開始的。你可以假設每個輸入只對應唯一的答案,而且你不可以...