LeetCode(一)配列と文字列

669 ワード

一、二数の和
整数配列numsとターゲット値targetを指定します.この配列で、ターゲット値の2つの整数を見つけてください.入力ごとに1つの答えしか対応しないと仮定できます.しかし、この配列の同じ要素を再利用することはできません.
例:
   nums = [2, 7, 11, 15], target = 9

   nums[0] + nums[1] = 2 + 7 = 9
     [0, 1]

方法1
for i in range(0, len(nums)-1):
	for j in range(i+1, len(nums)):
        	if nums[i] + nums[j] == target:
               	return [i, j]

2つのレイヤループを介してtargetの2つの数のインデックスが見つかるまで
方法2
d = {}
	n = len(nums)
	for i in range(0,n):
		d[nums[i]] = i
		j = d.get(target-nums[i], -1)
		if j != -1 and j != i:
			return [j ,i]

辞書テーブルを使用してハッシュテーブルを模倣し、配列内の値とインデックスの辞書を作成します.