文章 LeetCode - 两数之和
Post
Cancel

LeetCode - 两数之和

题目链接:两数之和

主要思路

遍历数组,并且使用 map 存储 target - nums[i] 的值

代码实现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/**
 * 时间复杂度: O(n), 空间复杂度: O(n)
 */
class Solution {
    func twoSum(_ nums: [Int], _ target: Int) -> [Int] {
        var dict = [Int: Int]()
        for (i, num) in nums.enumerated() {
            if let lastIndex = dict[target - num] {
                return [lastIndex, i]
            }
            dict[num] = i
        }
        fatalError("No valid outputs")
    }
}
This post is licensed under CC BY 4.0 by the author.