整数配列NUMSと目標値の目標を考えると、配列内の2つの整数の目標値を特定し、その配列の添字に戻るにお願いします。 あなたは、各入力が一つだけ答えに対応することを想定することができます。ただし、同じ配列要素を再使用することはできません。 例: 所与NUMS = [2、7、11、15]、目標= 9 なぜならNUMS [0] + NUMS [1] = 2 + 7 = 9 返された[0,1] 出典:滞在ボタン(LeetCode) リンクします。https://leetcode-cn.com/problems/two-sum 源泉徴収ネットワークからのすべての著作権。商業転載は、ソースを明記してください許可公式、非商用の転載をご連絡ください。
私の答え:
パブリック クラスTwoSum { 公共 静的 ボイドメイン(文字列[]引数){ INT []アレイ= {2、7、11、15 }。 int型ターゲット= 26 ; TwoSum.twoSum(アレイ、ターゲット) } パブリック 静的 INT [] twoSum(INT []アレイ、INT ターゲット){ 地図 <整数、INT []>結果= 新規のHashMap <整数、INT []> (); 以下のために(INT ; I <arrays.length; iが0 = Iは++ ){ ため(INT J = I; J <arrays.length; J ++ ){ result.put(配列[I] +配列[j]は、新しい INT [] {I、J})。 } } リターン result.get(ターゲット)== nullの?ヌル:result.get(ターゲット)。 } }
GitHubのコード: