1. 两数之和

1.暴力枚举

class Solution {
    func twoSum(_ nums: [Int], _ target: Int) -> [Int] {
        var result = [Int]()
        if nums.count < 2 {
            return result
        }
        var p_1 = 0
        while p_1 < nums.count {
            for index in (p_1+1)..<nums.count {
                if nums[p_1] + nums[index] == target {
                    result.append(p_1)
                    result.append(index)
                    return result
                }
            }
            p_1+=1
        }
        return result
    }
}

2.使用哈希表降低时间复杂度到O(n)

class Solution {
    func twoSum(_ nums: [Int], _ target: Int) -> [Int] {
        var hashTable: [Int: Int] = [:]
        for index in 0..<nums.count {
            if hashTable[target - nums[index]] != nil {
                return [hashTable[target - nums[index]]!, index]
            }
            hashTable[target - nums[index]] = index
        }
        return []
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi阅读 12,136评论 0 10
  • **2014真题Directions:Read the following text. Choose the be...
    又是夜半惊坐起阅读 13,420评论 0 23
  • 今早前半部分胃疼一次,后来能量从小腹往上到胃部有点轻抖。右大腿上一片麻中间出现一道最麻的,像很亮的光一样,又有点像...
    张德芬幸福驿站咸阳阅读 1,488评论 0 0
  • 我问心: 如何做好自己? 心告诉我: 对爱的人要真心, 对朋友要诚心, 对家人要宽心, 对身边的人要保持一颗慈悲心。
    夕子宁洋阅读 3,728评论 0 0
  • 我开始鄙视自己的灵魂, 饱餐终日然后无所事事 我怜悯街头的流浪汉和清洁工, 然后我却肆意挥霍浪费 我想滴酒不沾,却...
    咸的秋刀鱼阅读 832评论 0 0