《LeetCode力扣练习》代码随想录——双指针法(四数之和---Java)

《LeetCode力扣练习》代码随想录——双指针法(四数之和—Java)



刷题思路来源于 代码随想录

18. 四数之和
  • 双指针
    class Solution {public List<List<Integer>> fourSum(int[] nums, int target) {List<List<Integer>> result=new ArrayList<>();if(nums.length<4){return result;}if(nums.length==4&&(long)nums[0] + nums[1] + nums[2] + nums[3] == target){result.add(Arrays.asList(nums[0],nums[1],nums[2],nums[3]));return result;}Arrays.sort(nums);for(int a=0;a<nums.length;a++){if(target>0&&nums[a]>=target){break;}if(a>0&&nums[a-1]==nums[a]){continue;}for(int b=a+1;b<nums.length;b++){if(target>0&&nums[a]+nums[b]>=target){break;}if(b>a+1&&nums[b-1]==nums[b]){continue;}int left=b+1;int right=nums.length-1;while(left<right){long temp=(long)nums[a] + nums[b] + nums[left] + nums[right];if(temp>target){right--;}else if(temp<target){left++;}else{result.add(Arrays.asList(nums[a],nums[b],nums[left],nums[right]));while(left<right&&nums[left]==nums[left+1]){left++;}left++;while(left<right&&nums[right-1]==nums[right]){right--;}right--;}}}}return result;}
    }
    

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

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

相关文章

05. Springboot admin集成Actuator(一)

目录 1、前言 2、Actuator监控端点 2.1、健康检查 2.2、信息端点 2.3、环境信息 2.4、度量指标 2.5、日志文件查看 2.6、追踪信息 2.7、Beans信息 2.8、Mappings信息 3、快速使用 2.1、添加依赖 2.2、添加配置文件 2.3、启动程序 4、自定义端点Endpoint 5、自定…

【时序分析】TimeGPT:首个时间序列分析基础大模型

TimeGPT:首个时间序列分析基础大模型 1. 论文解读1.1 研究背景1.2 TimeGPT详解1.2.1 时间序列预测问题基础1.2.2 TimeGPT架构1.2.3 训练数据集1.2.4 训练TimeGPT1.2.5 不确定性量化1.2.6 实验结果1.2.6.1 Zero-shot 推断1.2.6.2 Fine Tuning1.2.6.3 时间对比1.2.7 讨论2. Time…

干洗店预约上门取货小程序与互联网洗鞋店小程序开发制作功能方案

干洗店预约上门取货小程序与互联网洗鞋店小程序开发制作功能方案 一、洗衣洗鞋店小程序功能 1. 预约订单&#xff1a;忙碌时&#xff0c;您可以使用预约功能轻松获取洗衣服务。 2. 在线下单&#xff1a;用户可直接通过小程序在线下单&#xff0c;享受专人上门取货与配送服务。…

Unity2017升级到Unity2018在Window7上输出空异常错误问题

Unity2017升级到Unity2018在Window7上输出空异常错误问题 一、环境Window7二、现象Unity报空异常&#xff08;.NET 4.x Equivalent&#xff09;三、日志四、解决方案第一种解决方案第二种解决方案 一、环境Window7 二、现象Unity报空异常&#xff08;.NET 4.x Equivalent&…

小白入门之安装NodeJS

重生之我在大四学JAVA 第五章 安装NodeJS 如果你在购买我闲鱼的程序&#xff0c;请尽量使用node14版本 修改安装路径 接着傻瓜式NEXT 测试是否安装成功 如果上面没提示版本号&#xff0c;就按照前两章配置环境变量步骤配置下环境变量 设置镜像地址 npm config set re…

基于遗传算法特征选择及单层感知机模型的IMDB电影评论文本分类案例

基于遗传算法特征选择及单层感知机模型的IMDB电影评论文本分类案例 1.数据载入及处理2.感知机模型建立3.模型训练4.遗传算法进行特征选择注意 5.联系我们 1.数据载入及处理 import torch import torch.nn as nn import torch.optim as optim from torch.utils.data import Dat…

【Flutter】黑白图片

一、将图片处理成黑白图片 //第一种方法CachedNetworkImage(imageUrl: imageUrl,width: 80,height: 80,fit: BoxFit.cover,color: Colors.black,//目标颜色colorBlendMode: BlendMode.color,//颜色混合模式)//第二种方法ShaderMask(shaderCallback: (Rect bounds) {return Lin…

lc1:两数之和

一句话描述问题&#xff1a;从数组中找两个数&#xff0c;等于目标值&#xff0c;返回他们的下标。 一句话题解M1&#xff1a;双层下标循环&#xff0c;第二层循环起点为上层起点1,两个循环数组值相加等于目标值&#xff0c;返回对应下标。 一句话题解M2&#xff1a;第一层循环…

基于多反应堆的高并发服务器【C/C++/Reactor】(中)Channel 模块的实现

在这篇文章中虽然实现了能够和多客户端建立连接&#xff0c;并且同时和多个客户端进行通信。 基于多反应堆的高并发服务器【C/C/Reactor】&#xff08;上&#xff09;-CSDN博客https://blog.csdn.net/weixin_41987016/article/details/135141316?spm1001.2014.3001.5501但是有…

ChatGPT4与ArcGIS Pro3助力AI 地理空间分析和可视化及助力科研论文写作

在地学领域&#xff0c;ArcGIS几乎成为了每位科研工作者作图、数据分析的必备工具&#xff0c;而ArcGIS Pro3除了良好地继承了ArcMap强大的数据管理、制图、空间分析等能力&#xff0c;还具有二三维融合、大数据、矢量切片制作及发布、任务工作流、时空立方体等特色功能&#x…

抖店怎么做?新手又该如何从头开始运营?

我是电商珠珠 抖店发展了将近4年时间&#xff0c;一直都备受关注。第一是因为他的门槛低&#xff0c;第二是他的玩法和传统有所差别&#xff0c;第三就是流量来源渠道比较广。 这一年所立的flag不到最后关头绝对不能倒&#xff0c;所以就会有很多人奔着这几点来尝试做店&…

MATLAB遗传算法工具箱的三种使用方法

MATLAB中有三种调用遗传算法的方式&#xff1a; 一、遗传算法的开源文件 下载“gatbx”压缩包文件&#xff0c;解压后&#xff0c;里面有多个.m文件&#xff0c;可以看到这些文件的编辑日期都是1998年&#xff0c;很古老了。 这些文件包含了遗传算法的基础操作&#xff0c;包含…

ebay倒计时活动攻略,ebay倒计时活动怎么做的?——站斧浏览器

ebay倒计时活动攻略 在ebay上做倒计时活动时&#xff0c;可以参考以下攻略&#xff1a; 制定合理的ebay优惠方案。可以根据消费者的需求和购买习惯&#xff0c;制定不同的优惠方案&#xff0c;例如满减、折扣、赠品等。同时&#xff0c;要保证优惠方案的真实性和公平性&#…

wordpress主题modown v8.81+erphpdown v16.0无限制无授权开心版

修复bug&#xff08;v8.81 2023.03.07&#xff09; 新增文章页正文下面常见问题手风琴模块&#xff0c;可设置显示文章的更新日期而不是发布日期&#xff0c;首页幻灯片支持指定文章、支持一个大图4个小图显示&#xff0c;grid网格列表支持显示简介&#xff0c;前台个人中心里显…

Qt 多线程用法

文章目录 开发平台QThread 类 moveToThreadQtConcurrent::run QFutureWatcherQThreadPool QRunnable 开发平台 项目说明OSwin10 x64Qt6.6compilermsvc2022构建工具cmake QThread 类 moveToThread 写一个简单的例子吧,比较容易理解,方便入门. 也可以看出这种方式,对于线程…

如何使用 Selenium 实现自动化操作?

本篇咱们来谈谈Selenium自动化脚本是如何工作的&#xff0c;以及如何实现一个简单的自动化示例&#xff1b; 一、关于Selenium 1.1、为什么选择它作为web自动化的测试工具&#xff1f; 选择Selenium作为web自动化测试工具的原因&#xff08;面试也许会问&#xff09;&#xff…

NiNNet

目录 一、网络介绍 1、全连接层存在的问题 2、NiN的解决方案(NiN块) 3、NiN架构 4、总结 二、代码实现 1、定义NiN卷积块 2、NiN模型 3、训练模型 一、网络介绍 NiN&#xff08;Network in Network&#xff09;是一种用于图像识别任务的卷积神经网络模型。它由谷歌研究…

【电路笔记】-串联电容器

串联电容器 文章目录 串联电容器1、概述2、示例13、示例34、总结 当电容器以菊花链方式连接在一条线上时&#xff0c;它们就串联在一起。 1、概述 对于串联电容器&#xff0c;流过电容器的充电电流 ( i C i_C iC​ ) 对于所有电容器来说都是相同的&#xff0c;因为它只有一条…

matlab实践(十一):导弹追踪

1.题目 a9.94,x062.06 2.方程 我们有&#xff1a; ( d x d t ) 2 ( d y d t ) 2 w 2 (\frac{\mathrm d\mathrm x}{\mathrm d\mathrm t})^2(\frac{\mathrm d\mathrm y}{\mathrm d\mathrm t})^2\mathrm w^2 (dtdx​)2(dtdy​)2w2 还有导弹始终指向船 ( d x d t d y d t ) …

【华为OD题库-106】全排列-java

题目 给定一个只包含大写英文字母的字符串S&#xff0c;要求你给出对S重新排列的所有不相同的排列数。如:S为ABA&#xff0c;则不同的排列有ABA、AAB、BAA三种。 解答要求 时间限制:5000ms,内存限制:100MB 输入描述 输入一个长度不超过10的字符串S&#xff0c;确保都是大写的。…