博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode[18]4Sum
阅读量:5225 次
发布时间:2019-06-14

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

Given an array S of n integers, are there elements abc, and d in S such that a + b + c + d = target? Find all unique quadruplets in the array which gives the sum of target.

Note:

  • Elements in a quadruplet (a,b,c,d) must be in non-descending order. (ie, a ≤ b ≤ c ≤ d)
  • The solution set must not contain duplicate quadruplets.
For example, given array S = {1 0 -1 0 -2 2}, and target = 0.    A solution set is:    (-1,  0, 0, 1)    (-2, -1, 1, 2)    (-2,  0, 0, 2)
class Solution {public:    vector
> fourSum(vector
&num, int target) { vector
> res; if(num.size()<4)return res; sort(num.begin(),num.end()); int c,d; for(int a=0;a
0&&num[a]==num[a-1]) continue; for(int b=a+1;b
a+1&&num[b]==num[b-1]) continue; c=b+1; d=num.size()-1; while(c
b+1&&num[c]==num[c-1]) { c++; continue; } if(d
target)d--; else { vector
temp; temp.push_back(num[a]); temp.push_back(num[b]); temp.push_back(num[c]); temp.push_back(num[d]); res.push_back(temp); c++; d--; } } } } return res; }};

 

转载于:https://www.cnblogs.com/Vae1990Silence/p/4283673.html

你可能感兴趣的文章
sql常见面试题
查看>>
jQuery总结第一天
查看>>
Java -- Swing 组件使用
查看>>
Software--Architecture--DesignPattern IoC, Factory Method, Source Locator
查看>>
poj1936---subsequence(判断子串)
查看>>
黑马程序员_Java基础枚举类型
查看>>
[ python ] 练习作业 - 2
查看>>
一位90后程序员的自述:如何从年薪3w到30w!
查看>>
在.net core上使用Entity FramWork(Db first)
查看>>
System.Net.WebException: 无法显示错误消息,原因是无法找到包含此错误消息的可选资源程序集...
查看>>
UIImage 和 iOS 图片压缩UIImage / UIImageVIew
查看>>
MongoDB的数据库、集合的基本操作
查看>>
ajax向后台传递数组
查看>>
疯狂JAVA16课之对象与内存控制
查看>>
[转载]树、森林和二叉树的转换
查看>>
WPF移动Window窗体(鼠标点击左键移动窗体自定义行为)
查看>>
软件测试-----Graph Coverage作业
查看>>
django ORM创建数据库方法
查看>>
创建Oracle synonym 详解
查看>>
php7 新特性整理
查看>>