【再送アルゴリズム~Leetcode毎日1題】167.2つの数の和II-入力秩序配列(難易度:簡単)


167.2つの数の和II-入力秩序配列は、昇順に配列された秩序配列を与え、2つの数を見つけて、それらが加算された和が目標数に等しいようにする.関数は、index 1とindex 2の2つの下付き値を返す必要があります.index 1はindex 2より小さくなければなりません.説明:返される下付きスケール値(index 1およびindex 2)は、ゼロから開始されません.入力ごとに一意の答えしか対応していないと仮定し、同じ要素を繰り返し使用することはできません.例:入力:numbers=[2,7,11,15]、target=9出力:[1,2]解釈:2と7の和は目標数9に等しい.したがってindex 1=1,index 2=2である.
周末と平日のテーマの难易度は本当に一言では言い尽くせない...周末になるとテーマの难易度がさっと上がって、今日のテーマは比较的简単で、二重の指针(前と后)でハッシュ表を使うことができて、今日は国科大空天院の开営式で、呉一戎院士のスピーチがあって、私は直接コードを贴って讲座を闻きました.
class Solution:
    def twoSum(self, numbers: List[int], target: int) -> List[int]:
        dct = {
     }
        for inx, i in enumerate(numbers):
            if i in dct:
                return [dct[i]+1, inx+1]
            dct[target-i] = inx

時間的複雑度も空間的複雑度もO(n)