多数のアルゴリズムと2つのPythonのバージョン

方法、暴力的な解決策 - 5S
複雑分析:時間複雑:O(^ 2 n)の空間の複雑さ:O(1)
長さ= LEN(NUMS)
の範囲内のiについて(長さ)
    の範囲内のjについて(I + 1、長さ):
        もしNUMS [I] + NUMS [J] ==ターゲット:
            リターン[I、J]
方法2:Pythonのスライスを使用して - 1S
複雑分析:時間複雑:O(N)の複雑空間:O(1)

NUM1、また同じ原理2トラバーサルと実際にするかどうかを一覧表示する - 問題解決への主キーは、NUM2 =ターゲットを見つけることです
:Iレンジ(LEN(NUMS))にするための
    目標NUMSなら[I] NUMSで[I + 1]:
        戻る[Iをnums.index(ターゲットNUMS [i]は、I + 1)]
方法3:ハッシュ - 80ミリ秒
複雑分析:時間複雑:O(N)の複雑空間:O(N)

ハッシュレコードキーの当面のニーズは、値を通過する必要性を見つけることです。
DIC = {}
列挙でiについて、NUM(NUMS)
    :DICでNUMなら
        戻り[DIC [NUM]、i]は
    他:
        DIC [ターゲット- NUM] =私
著者:aver58
リンクします。https://leetcode-cn.com/problems/two-sum/solution/1liang-shu-zhi-he-by-aver58/
出典:滞在ボタン(LeetCode)
著者によって予約の著作権。商業転載は非商用の転載は、ソースを明記してください、権限の作者に連絡してください。

おすすめ

転載: www.cnblogs.com/strawberry-1/p/11491663.html