18 4Sum(寻找四个数之和为指定数的集合Medium)

题目意思:给一个乱序数组,在里面寻找三个数之和为target的所有情况,这些情况不能重复,增序排列

思路:采用3Sum的做法

   ps:有见一种用hash的,存任意两个元素的和,然后变成3sum问题,需要判断重复

    图书馆的网,已经到了令人发指的程度,我告诫自己千万不要暴躁。

 1 class Solution {
 2 public:
 3     vector<vector<int>> fourSum(vector<int>& nums, int target) {
 4         vector<vector<int>> ans;
 5         vector<int> vec(4);
 6         int k,l,temp;
 7         sort(nums.begin(),nums.end());
 8         for(int i=0;i<nums.size();++i){
 9             if(i>0&&nums[i]==nums[i-1])continue;
10             for(int j=i+1;j<nums.size();++j){
11                 if(j>i+1&&nums[j]==nums[j-1])continue;
12                     k=j+1;
13                     l=nums.size()-1;
14                     while(k<l){
15                         if(k>j+1&&nums[k]==nums[k-1]){
16                             ++k;
17                             continue;
18                         }
19                         temp=nums[i]+nums[j]+nums[k]+nums[l];
20                         if(temp>target)--l;
21                         else if(temp<target)++k;
22                         else{
23                             vec[0]=nums[i];
24                             vec[1]=nums[j];
25                             vec[2]=nums[k];
26                             vec[3]=nums[l];
27                             ans.push_back(vec);
28                             --l;
29                             ++k;
30                         } 
31                     }
32             }
33         }
34         return ans;
35     }
36 };

 

转载于:https://www.cnblogs.com/smallby/p/4595570.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/492117.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

经济学人: 低调应用, 高调回报, 亚马逊才是AI技术最大受益企业

来源&#xff1a;经济学人编译&#xff1a;机器之能 张玺亚马逊六页会议备忘录举世闻名。公司高管必须每年写一篇商业发展规划。鲜为人知的是&#xff0c;这些备忘录上有一道必答题──机器学习的应用路径&#xff1f;据亚马逊的经理们透露&#xff0c;像「应用不多」这样的反馈…

C++学习之路(一)

第一章&#xff1a;C语言概述 前言&#xff1a;这里学习C教材是选用的清华大学出版社的《C语言基础教程》第二版&#xff0c;该版本语言较为通俗易懂&#xff0c;概念清晰&#xff0c;便于理解。因为之前学习过C语言&#xff0c;因此在学习本书之际&#xff0c;也是抱着一遍复…

你社交网站上的照片,也许已经被用来训练人工智能了

来源&#xff1a;网易智能斯特于2013年拍摄的这张照片被收录在IBM的人像数据集&#xff08;Diversity in Faces&#xff09;中毫无疑问&#xff0c;这张家庭照片是非常可爱的:照片中的爸爸留着短须&#xff0c;戴着无框眼镜&#xff0c;棕色头发的妈妈咧着嘴笑着。他们正和两个…

Python 学习编程 【for语句breakcontinue语句使用】(一)

前言 我是跟着B站小甲鱼的视频教程中学习的&#xff0c;今天看了小甲鱼的十多个教学小视频&#xff0c;发现其讲课风格还是颇受同学们喜欢的&#xff0c;我也是很喜欢这种实践性教学&#xff0c;并且也常常开车&#xff0c;和普通的慕课风格是有很大不同的&#xff0c;这样也更…

博客迁移至“零一积流|it-refer.com”

虽然在博客园写了没几篇文章&#xff0c;考虑到个人发展&#xff0c;自己还是建立一个独立的站点&#xff1a;零一积流。 以后直接在自己网站上写东西了&#xff0c;此处只用做文章收藏。转载于:https://www.cnblogs.com/rd-log/p/4599863.html

刘锋:互联网50年,从“巨网”到“大脑”

摘要&#xff1a;本文是刘锋博士2019年受邀在《科学大众》为中学生撰写的科普文章&#xff0c;详细阐述了互联网如何在过去50年里发生了怎样的巨大变化&#xff0c;并深刻影响着人类社会和科技未来。(《科学大众》 创刊于1937年&#xff0c;是中国最早创办的科普期刊。创刊以来…

python学习---常见的内置字符串(二)

注&#xff1a;将字符串内置函数记录整理下&#xff0c;之后需要用到的时候便于查找学习。 1.capitalize() &#xff1a; 第一个字符变为大写 例子&#xff1a; str2 xiaoxie str2.capitalize() Xiaoxie截图&#xff1a; 2.casefold() :将所有字符串改为小写 str1 AAcc…

Java 之 内部类

&#xff08;static修饰的成员属于整个类&#xff0c;而不属于单个对象&#xff09; 定义&#xff1a;将一个类放到另一个类的内部定义&#xff0c;这个在内部定义的类就叫做内部类&#xff08;也有的成嵌套类&#xff09;&#xff0c;包含内部类的类被称为外部类&#xff08;也…

“数字化”才是智能制造的基础!

来源&#xff1a; 航空工业 摘要&#xff1a;所谓的机器换人只是低端工作&#xff0c;高端工作的智能绝大部分决策管理还是靠人来完成。机器换人仍只是自动化的老路&#xff01;以下精彩内容为中国航空工业信息技术中心首席顾问宁振波在近日举办的“第九届航空航天信息化建设合…

数字图像处理学习之路:图像变换(一)

数字图像处理归纳总结1.1 数字图像处理基础1.2 数字图像处理技术1.3 图像处理一般流程1.4 图像变换案例分析&#xff08;如真彩色图像转换为灰度图像&#xff09;1.1 数字图像处理基础 概述&#xff1a;数字图像处理是基于画面进行二维或三维物体模型的重建&#xff0c;利用计…

Java-数据结构与算法-逢3减1

1.要求&#xff1a;有一群人围成一圈数数&#xff0c;逢3退1人&#xff0c;要求算出最后留下来的人的下标 2.代码&#xff1a; 1 package Test;2 3 public class Count3Quit1 {4 5 //要求&#xff1a;有一群人围成一圈数数&#xff0c;逢3退1人&#xff0c;要求算出最后留下…

2019年中国科创板全面解读报告

未来智能实验室是人工智能学家与科学院相关机构联合成立的人工智能&#xff0c;互联网和脑科学交叉研究机构。未来智能实验室的主要工作包括&#xff1a;建立AI智能系统智商评测体系&#xff0c;开展世界人工智能智商评测&#xff1b;开展互联网&#xff08;城市&#xff09;云…

雷达原理之 多普勒效应原理及应用(一)

多普勒效应&#xff1a;物体辐射的波长因为波源和观测者的相对运动而产生变化。 因为在运动的波源前面&#xff0c;波被压缩&#xff0c;波长变得较短&#xff0c;频率变得较高&#xff08;蓝移&#xff09;&#xff1b;在运动的波源后面时&#xff0c;会产生相反的效应。波长…

数字图像处理总结(冈萨雷斯版)

数字图像处理前六章知识点总结第一章&#xff1a;绪论第二章&#xff1a;数字图像基础第三章&#xff1a;灰度变换与空间滤波第四章&#xff1a;频率域滤波第五章&#xff1a;图像恢复与重建第六章&#xff1a;彩色图像处理第一章&#xff1a;绪论 1.数字图像概念&#xff1a; …

iOS加入百度地图的几个问题

1、其中一个.m文件要改成.mm文件 2、plist文件必须包含两项 Bundle display name&#xff0d;值不能为空 NSLocationWhenInUseUsageDescription&#xff0d;值可以为空 3、必须把mapapi.bundle加入到工程&#xff0c;否则出现“引擎加载失败”错误 转载于:https://www.cnblogs.…

未来已来:5G将在这88个方面影响我们的工作和生活

来源&#xff1a;资本实验室作为备受瞩目的下一代移动通信网络&#xff0c;全球围绕5G的测试、布局与谈判不断升温。而与之相关的竞争也越发白热化&#xff0c;公司间的竞争、城市间的竞争、国家前的竞争&#xff0c;5G背负着太多的使命和期待。相比于4G通讯&#xff0c;5G不仅…

线性调频信号(LFM)的形式及幅度谱、相位谱特性

线性调频信号在SAR系统中非常重要&#xff0c;其瞬时频率是时间的线性函数。该信号常用于信号的发射&#xff0c;以获得均匀的信号带宽&#xff0c;在接收信号中则来自传感器运动。本篇博客主要讨论线性调频信号的形式&#xff0c;及在matlab仿真中的幅频特性和相频特性。 一、…

Android学习笔记----ArcGIS在线地图服务(Android API)坐标纠偏

仅限于如下ArcGIS在线地图服务&#xff08;高德提供数据&#xff09;&#xff1a; //概述&#xff1a;彩色中文含兴趣点版中国基础地图 //投影:WGS 1984 Web-Mercator //切片格式:MIXED90 //服务类型:基础地图服务 //数据提供商:高德软件有限公司 //数据获取时间:2014年秋季 //…

机器人领域十大前沿技术

来源&#xff1a;工业互联网观察近些年来&#xff0c;机器人行业发展迅速&#xff0c;机器人被广泛应用于各个领域尤其是工业领域&#xff0c;不难看出其巨大潜力。与此同时&#xff0c;我们也必须认识到机器人行业的蓬勃发展&#xff0c;离不开先进的科研进步和技术支撑。以下…

星载低波段极化SAR电离层法拉第旋转效应(FR)及校正国内外研究现状-学习笔记

相较于常规星载SAR&#xff0c;星载低波段极化SAR一方面具有较强穿透能力&#xff0c;能够探测植被和千层地表下的隐藏目标&#xff0c;另一方面&#xff0c;该系统对生物量更为敏感&#xff0c;能够观测森林资源的消长&#xff0c;对研究全球碳循环与气候变化的相互作用具有重…