博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode第一题-----三数之和
阅读量:4302 次
发布时间:2019-05-27

本文共 1076 字,大约阅读时间需要 3 分钟。

题目要求:

给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。

注意:答案中不可以包含重复的三元组。

例如, 给定数组 nums = [-1, 0, 1, 2, -1, -4],

满足要求的三元组集合为:

[-1, 0, 1],  [-1, -1, 2]]
class Solution(object):    def threeSum(self, nums):        """        :type nums: List[int]        :rtype: List[List[int]]        """        nums.sort()#排序        result =[]        i = 0        for i in range(len(nums)):            if i == 0 or nums[i] > nums[i-1]:                l = i + 1                r = len(nums)-1                while l < r:                    s = nums[i] + nums[l] + nums[r]                    if s == 0:                        result.append([nums[i], nums[l], nums[r]])                        l += 1                        r -= 1                        while l < r and nums[l] == nums[l-1]:#避免相同值                            l += 1                        while l < r and nums[r] == nums[r+1]:                            r -= 1                    elif s > 0:                        r -= 1                    else :                        l += 1        return result

转载地址:http://sqmws.baihongyu.com/

你可能感兴趣的文章
PHP批量插入
查看>>
laravel连接sql server 2008
查看>>
Laravel 操作redis的各种数据类型
查看>>
Laravel框架学习笔记之任务调度(定时任务)
查看>>
laravel 定时任务秒级执行
查看>>
浅析 Laravel 官方文档推荐的 Nginx 配置
查看>>
Swagger在Laravel项目中的使用
查看>>
Laravel 的生命周期
查看>>
CentOS Docker 安装
查看>>
Nginx
查看>>
Navicat远程连接云主机数据库
查看>>
Nginx配置文件nginx.conf中文详解(总结)
查看>>
Mysql出现Table 'performance_schema.session_status' doesn't exist
查看>>
MySQL innert join、left join、right join等理解
查看>>
vivado模块封装ip/edf
查看>>
sdc时序约束
查看>>
Xilinx Jtag Access/svf文件/BSCANE2
查看>>
NoC片上网络
查看>>
开源SoC整理
查看>>
【2020-3-21】Mac安装Homebrew慢,解决办法
查看>>