15. 3Sum【M】【28】
来源:互联网 发布:小说大纲软件 编辑:程序博客网 时间:2024/05/01 23:29
Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.
Note:
- Elements in a triplet (a,b,c) must be in non-descending order. (ie, a ≤ b ≤ c)
- The solution set must not contain duplicate triplets.
For example, given array S = {-1 0 1 2 -1 -4}, A solution set is: (-1, 0, 1) (-1, -1, 2)
Subscribe to see which companies asked this question
关键在于两个指针,如果和小于零,左边的坐标增长,反之右边的左边增长
class Solution(object): def threeSum(self, nums): nums.sort() #print nums res = [] minn = 1 << 31 for i in xrange(len(nums)): a = 0 b = len(nums) - 1 while a < i and b > i: print i,a,b,nums[a],nums[i],nums[b] if nums[a] + nums[b] + nums[i] == 0: if [nums[a],nums[i],nums[b]] not in res: res += [nums[a],nums[i],nums[b]], a += 1 b -= 1 continue if nums[a] + nums[b] + nums[i] <= 0: a += 1 else: b -= 1 ''' #nums = set(nums) #print nums minn = 1 << 31 #print minn res = [] per = itertools.combinations(nums,3) for i in per: #print i summ = sum(i)#i[0] + i[1] + i[2] if summ == 0 and i not in res: res.append(i) #for i in xrange(len(nums)): # print nums[i] ''' return res """ :type nums: List[int] :rtype: List[List[int]] """
0 0
- 15. 3Sum【M】【28】
- 15. 3Sum M
- 15-m-3Sum
- LeetCode:M-3 Sum
- 16-m-3Sum Closest
- leetcode(M) 3sum closest
- 《LeetBook》leetcode题解(15):3Sum[M]
- 16. 3Sum Closest【M】【14】
- 1-m-Two Sum
- 39-m-Combination Sum
- 18-m-4Sum
- leetcode(M) three sum
- 494. Target Sum(M)
- 《LeetBook》leetcode题解(16):3Sum Closest [M]
- 40-m-Combination Sum II
- (M)Dynamic Programming:Target Sum
- (M)Backtracking:39. Combination Sum
- 15. 3Sum && 16 sum closet && 18 4sum
- MyBatis入门
- Java4Android第4课:java的封装性
- android 创建文件夹和文件
- cocos creator 触摸捕捉事件
- 通用快捷键
- 15. 3Sum【M】【28】
- CollectionView自定义布局
- java回忆录(2)— 动态代理之JDK的动态代理 Proxy类(1)
- Java基础回顾 : 处理流(缓冲流)
- 曝光算法
- Json对象与Json字符串互转(4种转换方式) jquery 以及 js 的方式
- MYSQL使用group by,如何查询出总记录数
- java正则表达式
- VideoView的onPreparedListener