麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

[LeetCode]15.3Sum

2019-11-14 10:38:20
字體:
來源:轉載
供稿:網友

這道題在春節假期期間做的,實在沒有心思做,自己只會暴力算法,也就是三層嵌套循環的O(n^3)的算法。

網上有此類問題的統一算法,k sum,假期也只了解了3Sum的解法,核心思想是先排序,后使用兩個指針(其實就是左右索引)將復雜度降到了O(n^2)

算法:

排序,O(nlogn)如果是2Sum,那么只需要兩個指針(lo, hi),一個從左一個從右,向中間搜索。while lo < hi:if sums[lo] + sums[hi] == target:result.append([sums[lo], sums[hi]])lo += 1hi -= 1while sums[lo] == sums[lo - 1]:lo += 1while sums[hi] == sums[hi + 1]:hi -= 1elif sums[lo] + sums[hi] < target:lo += 1else:hi -= 1

3Sum是在2Sum外加上了一層循環class Solution(object):    def threeSum(self, nums):        """        :type nums: List[int]        :rtype: List[List[int]]        """        # nums = list(set(nums))        # PRint nums        length = len(nums)        result = []        if nums == None or length < 3:            return result        nums.sort()        for x in xrange(0, length - 2):            if nums[x] > 0:                break            else:                if x == 0 or nums[x] > nums[x - 1]:                    left = x + 1                    right = length - 1                    while left < right:                        if nums[x] + nums[left] + nums[right] == 0:                            if [nums[x], nums[left], nums[right]] not in result:                                result.append(                                    [nums[x], nums[left], nums[right]])                            left += 1                            right -= 1                            while left < right and nums[left] == nums[left - 1]:                                left += 1                            while left < right and nums[right] == nums[right + 1]:                                right -= 1                        elif nums[x] + nums[left] + nums[right] < 0:                            left += 1                        else:                            right -= 1        return result
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 精品二区在线观看 | 视频一区二区三区在线播放 | 国产乱淫av一区二区三区 | 成人视屏网站 | 成人精品免费在线观看 | 一级黄色在线免费观看 | 午夜视频在线免费观看 | 国产亚洲精品久久久久5区 日韩一级片一区二区三区 国产精品久久久久av | 久久精品女人天堂av | 一级免费在线视频 | 国产美女一区二区在线观看 | 成人精品一区二区 | 91精品国| 黄网站在线免费 | 国内精品久久久久久久星辰影视 | 色视频在线 | 97干色| 欧美亚洲一级 | 精品一区二区三区免费毛片 | 天天色综合2 | 亚洲一区二区三区高清 | 亚洲最大的成人网 | 成人艳情一二三区 | 成人男女啪啪免费观看网站四虎 | 91av在线免费观看 | 天堂成人国产精品一区 | 婷婷久久影院 | h视频免费在线观看 | 国产精品啪 | 蜜桃精品视频 | 一级毛片大片 | 九九综合视频 | 成人一区二区三区在线 | 9999久久久久久 | 国产草草视频 | 久成人| 国产亚洲精品综合一区91555 | 久草干| 久久久久夜色精品国产老牛91 | 黄在线免费| jizzyouxxxx|