成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

【Leetcode刷題】15. 三數(shù)之和

bergwhite / 1683人閱讀

摘要:題目給你一個(gè)包含個(gè)整數(shù)的數(shù)組,判斷中是否存在三個(gè)元素,,,使得請(qǐng)你找出所有和為且不重復(fù)的三元組。

題目

給你一個(gè)包含 n 個(gè)整數(shù)的數(shù)組?nums,判斷?nums?中是否存在三個(gè)元素 a,b,c ,使得?a + b + c = 0 ?請(qǐng)你找出所有和為 0 且不重復(fù)的三元組。

注意:答案中不可以包含重復(fù)的三元組。

示例1

輸入:nums = [-1,0,1,2,-1,-4]輸出:[[-1,-1,2],[-1,0,1]]

示例2

輸入:nums = []輸出:[]

示例3

輸入:nums = [0]輸出:[]

提示

(1)0 <= nums.length <= 3000

(2)-105?<= nums[i] <= 105

解題思路

(1)對(duì)輸入的nums中遍歷獲取第一個(gè)數(shù),相同時(shí)跳過

(2)在第一個(gè)數(shù)右邊遍歷獲取第二個(gè)數(shù),相同時(shí)跳過

(3)在右邊開始往回找第三個(gè)數(shù),但是要保證第三個(gè)數(shù)在第二個(gè)數(shù)右邊

(4)如果找到三個(gè)數(shù)加起來的和為0,則記錄進(jìn)ans

(5)最后輸出ans

代碼

class Solution:    def threeSum(self, nums: List[int]) -> List[List[int]]:        n = len(nums)        nums.sort()        ans = list()                # 枚舉 a        for first in range(n):            # 需要和上一次枚舉的數(shù)不相同            if first > 0 and nums[first] == nums[first - 1]:                continue            # c 對(duì)應(yīng)的指針初始指向數(shù)組的最右端            third = n - 1            target = -nums[first]            # 枚舉 b            for second in range(first + 1, n):                # 需要和上一次枚舉的數(shù)不相同                if second > first + 1 and nums[second] == nums[second - 1]:                    continue                # 需要保證 b 的指針在 c 的指針的左側(cè)                while second < third and nums[second] + nums[third] > target:                    third -= 1                # 如果指針重合,隨著 b 后續(xù)的增加                # 就不會(huì)有滿足 a+b+c=0 并且 b

Reference

題庫 - 力扣 (LeetCode) 全球極客摯愛的技術(shù)成長(zhǎng)平臺(tái)

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/119999.html

相關(guān)文章

  • LeetCode15.三數(shù)之和 JavaScript

    摘要:三數(shù)之和給定一個(gè)包含個(gè)整數(shù)的數(shù)組,判斷中是否存在三個(gè)元素,,,使得找出所有滿足條件且不重復(fù)的三元組。例如給定數(shù)組,滿足要求的三元組集合為答案參考 LeetCode15.三數(shù)之和 JavaScript 給定一個(gè)包含 n 個(gè)整數(shù)的數(shù)組 nums,判斷 nums 中是否存在三個(gè)元素 a,b,c ,使得 a + b + c = 0 ?找出所有滿足條件且不重復(fù)的三元組。 注意:答案中不可以包含重...

    idisfkj 評(píng)論0 收藏0
  • LeetCode 攻略 - 2019 年 8 月上半月匯總(109 題攻略)

    摘要:每天會(huì)折騰一道及以上題目,并將其解題思路記錄成文章,發(fā)布到和微信公眾號(hào)上。三匯總返回目錄在月日月日這半個(gè)月中,做了匯總了數(shù)組知識(shí)點(diǎn)?;蛘呃奖疚淖钕旅?,添加的微信等會(huì)根據(jù)題解以及留言內(nèi)容,進(jìn)行補(bǔ)充,并添加上提供題解的小伙伴的昵稱和地址。 LeetCode 匯總 - 2019/08/15 Create by jsliang on 2019-08-12 19:39:34 Recently...

    tracy 評(píng)論0 收藏0
  • python LeetCode 15.三數(shù)之和

    摘要:給定一個(gè)包含個(gè)整數(shù)的數(shù)組,判斷中是否存在三個(gè)元素,,,使得找出所有滿足條件且不重復(fù)的三元組。 給定一個(gè)包含 n 個(gè)整數(shù)的數(shù)組?nums,判斷?nums?中是否存在三個(gè)元素 a,b,c ,使得?a + b + c = 0 ?找出所有滿足條件且不重復(fù)的三元組。 注意:答案中不可以包含重復(fù)的三元組。 例如, 給定數(shù)組 nums = [-1, 0, 1, 2, -1, -4], 滿足要求的三元...

    stonezhu 評(píng)論0 收藏0
  • LeetCode16.最接近的三數(shù)之和 JavaScript

    摘要:最接近的三數(shù)之和給定一個(gè)包括個(gè)整數(shù)的數(shù)組和一個(gè)目標(biāo)值。返回這三個(gè)數(shù)的和。假定每組輸入只存在唯一答案。例如,給定數(shù)組,,,和與最接近的三個(gè)數(shù)的和為答案參考和三數(shù)之和一樣,我先用的循環(huán),現(xiàn)在用的循環(huán) LeetCode16.最接近的三數(shù)之和 JavaScript 給定一個(gè)包括 n 個(gè)整數(shù)的數(shù)組 nums 和 一個(gè)目標(biāo)值 target。找出 nums 中的三個(gè)整數(shù),使得它們的和與 target...

    xiaokai 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<