毎日のアルゴリズムの問題 - 二つの数字

件名の説明:

整数配列NUMSと目標値の目標を考えると、配列内の2つの整数の目標値を特定し、その配列の添字に戻るにお願いします。

あなたは、各入力が一つだけ答えに対応することを想定することができます。ただし、同じ配列要素を再使用することはできません。

例:

所与NUMS = [2、7、11、15]、目標= 9

なぜならNUMS [0] + NUMS [1 ] = 2 + 7 = 9
返される[0,1]

コード:

関数(NUMS、ターゲット){
    聞かせてARR = []
    {(I ++; I <nums.length I = 0せて)のために
        聞かせてDIF =ターゲット - NUMS [I]
        もし(ARR [DIF]!==未定義){
            リターン[ARR [DIF]、i]は、
        }
        ARR [NUMS [I] =私
    }
}
//時間複雑度はO(N)であります

おすすめ

転載: www.cnblogs.com/zhoulixiangblog/p/12041613.html