三数之和(三数不重复)
给你一个包含 n
个整数的数组 nums
,判断 nums
中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0
且不重复的三元组。
注意:答案中不可以包含重复的三元组。
示例 1:
输入:nums = [-1,0,1,2,-1,-4] 输出:[[-1,-1,2],[-1,0,1]]
示例 2:
输入:nums = [] 输出:[]
示例 3:
输入:nums = [0] 输出:[]
示例代码:
class Solution:def threeSum(self, nums: List[int]) -> List[List[int]]:n = len(nums)ret = []if not nums and len(nums) < 3:return retnums.sort()for i in range(n):if nums[i] > 0:return retif i > 0 and nums[i] == nums[i-1]:continuel, r = i+1, n-1while l < r:if nums[i] + nums[l] + nums[r] == 0:ret.append([nums[i], nums[l], nums[r]])while l < r and nums[r] == nums[r-1]:r -= 1while l < r and nums[l] == nums[l+1]:l += 1r -= 1l += 1elif nums[i] + nums[l] + nums[r] > 0:r -= 1else:l += 1return ret
三数之和(三数不重复)相关推荐
- 《漫画算法2》源码整理-6 两数之和 三数之和
两数之和 import java.util.*;public class TwoSum {public static List<List<Integer>> twoSum(in ...
- 基础数学(二)两数之和 三数之和
目录 两数之和_牛客题霸_牛客网 三数之和_牛客题霸_牛客网 两数之和_牛客题霸_牛客网 给出一个整型数组 numbers 和一个目标值 target,请在数组中找出两个加起来等于目标值的数的下标,返 ...
- leetcode15. 三数之和(三指针)
一:题目 二:思路 1.这里的去重是指的是我们在遍历元素的时候,遇到相同的挨着的相同的元素的时候要跳过 2.对元素进行排序,为了后面的比较 3.我们用的是三个指针,第一个指针i指向第一个元素,第二个指 ...
- 代码随想录算法训练营第七天|454、四数相加Ⅱ 383、赎金信15、三数之和18、四数之和
454.四数相加Ⅱ.383.赎金信.15.三数之和四数之和 四数相加 对于四数相加,我们可以定义一个map用来记录nums1与nums2的和对应次数,再遍历nums3与nums4,如果存在c与d使得a ...
- 代码随想录算法训练营第七天 | 454.四数相加II ,383. 赎金信 ,15. 三数之和,18. 四数之和
一.参考资料 四数相加II 题目链接/文章讲解/视频讲解:https://programmercarl.com/0454.%E5%9B%9B%E6%95%B0%E7%9B%B8%E5%8A%A0II. ...
- 代码随想录算法训练营第七天|454.四数相加II ● 383. 赎金信 ● 15. 三数之和 ● 18. 四数之和
一.454.四数相加II 力扣 思路:第一眼还没反应过来,真是缺练.在四个数组中分别寻找,可以先把前两个数组的和先存入map中,再计算后两个数组元素的和,看一下相反数在map中出现没有,出现过就res ...
- 【LeetCode】两数之和、三数之和、四数之和系列
文章目录 两数之和★ 三数之和★★ 四数之和★★ 四数相加Ⅱ★★ 最接近的三数之和★★ 此篇文章总结下力扣中的两数之和.三数之和.四数之和及一系列求数组中满足达到目标值的元组个数的问题,仔细阅读下面的 ...
- ❤️导图整理数组3: 两数之和II有序数组, 多个有序, 思路全变, 力扣167❤️
此专栏文章是对力扣上算法题目各种方法的总结和归纳, 整理出最重要的思路和知识重点并以思维导图形式呈现, 当然也会加上我对导图的详解. 目的是为了更方便快捷的记忆和回忆算法重点(不用每次都重复看题解), ...
- 【前端来刷LeetCode】两数之和与两数相加
大部分玩前端的小伙伴,在算法上都相对要薄弱些,毕竟调样式.调兼容就够掉头发的了,哪还有多余的头发再去折腾. 确实在前端中需要使用到算法的地方是比较少,但若要往高级方向发展,算法的基本功就非常重要啦.对 ...
- 【算法】哈希表 ( 两数之和 )
算法 系列博客 [算法]刷题范围建议 和 代码规范 [算法]复杂度理论 ( 时间复杂度 ) [字符串]最长回文子串 ( 蛮力算法 ) [字符串]最长回文子串 ( 中心线枚举算法 ) [字符串]最长回文 ...
最新文章
- kd树 python实现_Python KD树实现+简单的KNN实现
- 调用webapi 错误:使用 HTTP 谓词 POST 向虚拟目录发送了一个请求,而默认文档是不支持 GET 或 HEAD 以外的 HTTP 谓词的静态文件。的解决方案
- google chrome 谷歌浏览器 快捷键说明
- AIX 访问Linux NFS共享错误案例
- python语言与c语言相比在分支结构上有什么不同_大工20春 C/C 语言程序设计 在线作业3 - 百度文库...
- 计算机网络原理梳理丨清晰认识 TCP/IP 协议,图解秒懂!
- twitter自定义api_为Twitter4j创建自定义SpringBoot Starter
- 您自己的MicroProfile Config来源
- codeblocks下libcurl的配置
- runloop - 面试题
- 可以分屏的软件_Mac上的分屏功能,让你办公更高效
- 人工智能——数据、信息与知识
- 简单理解Momentum,RMSprop,Adam优化算法
- java生成固定长度随机数
- HTML和小程序的 12 种 flex 布局
- 计算机图形学应用题,计算机图形学教学大纲
- 向量的外积(outer product)与克罗内克积(Kronecker)
- 基于Java语言的安卓程序编程之一环境搭建2
- Python实现手写体数字图片识别+GUI界面+画板数字识别
- 用Python实现单词尾缀的分析及提取