Leetcode—18.四数之和【中等】
2023每日刷题(四十一)
Leetcode—18.四数之和

实现代码
class Solution {
public:vector<vector<int>> fourSum(vector<int>& nums, int target) {vector<vector<int>> ans;sort(nums.begin(), nums.end());int n = nums.size();int i, j, k, h;long long s, x, y;for(i = 0; i < n - 3; i++) {x = nums[i];// 除重if(i > 0 && x == nums[i - 1]) {continue;}if(x + nums[i + 1] + nums[i + 2] + nums[i + 3] > target) {break;}if(x + nums[n - 1] + nums[n - 2] + nums[n - 3] < target) {continue;}// 除重for(h = i + 1; h < n - 2; h++) {y = nums[h];if(h > i + 1 && y == nums[h - 1]) {continue;}if(x + y + nums[h + 1] + nums[h + 2] > target) {break;}if(x + y + nums[n - 1] + nums[n - 2] < target) {continue;}j = h + 1;k = n - 1;while(j < k) {s = x + y + nums[j] + nums[k];if(s > target) {k--;} else if(s < target) {j++;} else {vector<int> res;res.push_back((int)x);res.push_back((int)y);res.push_back(nums[j]);res.push_back(nums[k]);ans.push_back(res);j++;while(j < k && nums[j] == nums[j - 1]) {j++;}k--;while(j < k && nums[k] == nums[k + 1]) {k--;}}}}}return ans;}
};
运行结果

之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!
相关文章:
Leetcode—18.四数之和【中等】
2023每日刷题(四十一) Leetcode—18.四数之和 实现代码 class Solution { public:vector<vector<int>> fourSum(vector<int>& nums, int target) {vector<vector<int>> ans;sort(nums.begin(), nums.end());int n …...
springsecurity6配置二
一、springsecurity6自定义认证异常处理器 1.1 AuthenticationEntryPointImpl.java package com.school.information.core.security.handler;import com.alibaba.fastjson.JSON; import com.school.information.enums.result.ResultStatusEnum; import com.school.informatio…...
php如何对比浮点数大小(bccomp函数)
第一部分,常规例子: 例1:左边比右边小,结果:-1 //示例,左边比右边小返回值:-1 $price1 2.14; $price2 3.14; $result bccomp($price1, $price2, 2); echo 对比结果:.$result;//…...
服务号和订阅号哪个好
服务号和订阅号有什么区别?服务号转为订阅号有哪些作用?在推送频率上来看,服务号每月能推送四条消息,而订阅号可以每天(24小时)推送一条消息。如果企业开通公众号的目的是提供服务,例如售前资讯…...
面试问题--智能指针
什么是智能指针? 当你在编写程序时,可能需要在运行时动态分配内存来存储数据。在传统的C中,你可能会使用 new 和 delete 操作符来手动管理内存。但是这样容易出现一些问题,比如忘记释放内存导致内存泄漏,或者释放了之…...
向量机SVM原理理解和实战
目录 概念场景导入 点到超平面的距离公式 最大间隔的优化模型 硬间隔、软间隔和非线性 SVM 用 SVM 如何解决多分类问题 1. 一对多法 2. 一对一法 SVM主要原理和特点 原理 优点 缺点 支持向量机模型分类 SVM实战如何进行乳腺癌检测 数据集 字段含义 代码实现 参…...
什么是 Node.js?
在 Node.js 出现之前,最常见的 JavaScript 运行时环境是浏览器,也叫做 JavaScript 的宿主环境。浏览器为 JavaScript 提供了 DOM API,能够让 JavaScript 操作浏览器环境(JS 环境)。 2009 年初 Node.js 出现了…...
系列九、声明式事务(xml方式)
一、概述 声明式事务(declarative transaction management)是Spring提供的对程序事务管理的一种方式,Spring的声明式事务顾名思义就是采用声明的方式来处理事务。这里所说的声明,是指在配置文件中声明,用在Spring配置文件中声明式的处理事务来…...
c盘清理——常用方法和工具整理
背景 最近c盘满了,只剩下1-2G,周末有空清理一下。对这块不太熟悉,下面只是把今天网上看到的比较好用的工具整理一下。 使用工具 磁盘大小查看工具——TreeSize(收费) 之前都是右键一个个看每个文件的大小࿰…...
【React】打包体积分析 source-map-explorer
通过分析打包体积,才能知道项目中的哪部分内容体积过大,方便知道哪些包需要进一步优化。 使用步骤 安装分析打包体积的包:npm i source-map-explorer在 package.json 中的 scripts 标签中,添加分析打包体积的命令对项目打包&…...
Zookeeper(一):在WSL单机搭建Zookeeper伪集群
目录 Zookeeper1 启动单个Zookeeper实例1.1 下载Zookeeper安装包并解压1.2 添加环境变量1.3 修改默认配置1.4 新建数据存储目录和日志目录1.5 启动Zookeeper1.6 停止Zookeeper 2 搭建Zookeeper集群2.1 新建集群目录2.2 配置环境变量2.3 创建节点目录2.4 修改配置2.5 创建节点ID…...
Go语法的特殊之处
上文我们讲了GO模块引入指令Go Mod,本文讲述Go语法的特殊之处 : 单变量 : hello:“hello” Go 语言中新增了一个特殊的运算符:,这个运算符可以使变量在不声明的情况下直接被赋值使用。其使用方法和带值声明变量类似,只是少了var关键字&…...
浏览器v8垃圾回收机制和内存泄漏分析-初级
借鉴:一文搞懂V8引擎的垃圾回收 - 掘金 (juejin.cn) 聊聊V8引擎的垃圾回收 - 掘金 (juejin.cn) 内存泄漏方向: 1、全局变量 未手动清除 2、定时器 未手动清除 3、闭包中使用了匿名函数 未手动清除 4、dom被赋值使用后 未手动清除 其他解决方式 1、…...
hdlbits系列verilog解答(7420 chip)-49
文章目录 一、问题描述二、verilog源码三、仿真结果一、问题描述 本次将实现7420逻辑芯片,它内部有2个4输入的与非门电路,外部有8个输入和2个输出管脚,功能框图如下所示: 二、verilog源码 module top_module ( input p1a, p1b, p1c, p1d,output p1y,input p2a, p2b, p2c…...
Sentinel核心类解读:Entry
默认情况下,Sentinel会将controller中的方法作为被保护资源,Sentinel中的资源用Entry来表示。 Sentinel中Entry可以理解为每次进入资源的一个凭证,如果调用SphO.entry()或者SphU.entry()能获取Entry对象,代表获取了凭证ÿ…...
YOLOv8改进 | SAConv可切换空洞卷积(附修改后的C2f+Bottleneck)
论文地址:官方论文地址 代码地址:官方代码地址 一、本文介绍 本文给大家带来的改进机制是可切换的空洞卷积(Switchable Atrous Convolution, SAC)是一种创新的卷积网络机制,专为增强物体检测和分割任务中的特征提取而…...
可以ping通IP但是无法远程连接-‘telnet‘ 不是内部或外部命令,也不是可运行的程序或批处理文件
起因 一开始远程连接IP,报错,怀疑是自己网络原因,但是同事依旧无法连接 怀疑是自己防火墙的原因,查看关闭依旧无法连接 问题 两个地址可以ping通排除防火墙缘故 怀疑端口,测试端口 然 解决方案 winR 输入control…...
使用VC++设计程序:实现常见的三种图像插值算法:最近邻插值,双线性插值,立方卷积插值
图像放大的三种插值算法 获取源工程可访问gitee可在此工程的基础上进行学习。 该工程的其他文章: 01- 一元熵值、二维熵值 02- 图像平移变换,图像缩放、图像裁剪、图像对角线镜像以及图像的旋转 03-邻域平均平滑算法、中值滤波算法、K近邻均值滤波器 04-…...
多级嵌套vue同步调用用法
//需求 要求同步调用initGame2方法 //调用方法 this.initSocket(); //定义方法为同步 async initSocket() { //调用为同步 await this.initGame2(); //定义方法为同步 async initGame2() {const e await w({ url: //定义w方法 const w e.create({ baseURL: http://my_url:8…...
C#,《小白学程序》第八课:列表(List)其二,编制《高铁列车时刻表》与时间DateTime
1 文本格式 /// <summary> /// 车站信息类 class /// </summary> public class Station { /// <summary> /// 编号 /// </summary> public int Id { get; set; } 0; /// <summary> /// 车站名 /// </summary&g…...
城通网盘解析器:3步解决下载慢、广告多的终极方案
城通网盘解析器:3步解决下载慢、广告多的终极方案 【免费下载链接】ctfileGet 获取城通网盘一次性直连地址 项目地址: https://gitcode.com/gh_mirrors/ct/ctfileGet 还在为城通网盘下载速度慢如蜗牛而烦恼吗?还在被层层广告弹窗折磨得耐心全无吗…...
Phi-4-mini-reasoning推理效果展示:复杂数学题求解与逻辑链生成案例集
Phi-4-mini-reasoning推理效果展示:复杂数学题求解与逻辑链生成案例集 1. 模型核心能力概览 Phi-4-mini-reasoning是一款专注于数学推理和逻辑链生成的轻量级开源模型。这个模型最大的特点是能够处理复杂的数学问题,并给出详细的推理步骤。它支持长达1…...
Ubuntu降级实战:从内核卸载到系统回滚的完整指南(附常见问题排查)
Ubuntu降级实战:从内核卸载到系统回滚的完整指南(附常见问题排查) 当Ubuntu系统升级后出现兼容性问题或性能下降时,回退到稳定版本往往是最高效的解决方案。不同于常规的软件降级,系统级回滚涉及内核管理、依赖链调整和…...
从零组装F450四轴:APM飞控调参与GPS校准实战指南
1. F450四轴组装前的准备工作 第一次组装无人机就像拼装一台会飞的乐高,既兴奋又充满挑战。我去年第一次接触F450机架时,发现这确实是新手入门的绝佳选择——价格亲民、结构简单、扩展性强。不过要让它真正飞起来,准备工作可不能马虎。 核心部…...
Hermes Agent爆火:是OpenClaw终结者,还是反OpenClaw情绪的烟花?
【Hermes Agent冲上热门榜首】这两天,Hermes Agent冲上了OpenRouter“最热门的编程Agent”榜首,分类榜显示用量达到149B tokens。在OpenRouter平台上,Hermes Agent进入本周增长最快的应用和Agent榜单,一周内实现了367%的增长&…...
3分钟掌握Balena Etcher:安全烧录系统镜像的终极指南
3分钟掌握Balena Etcher:安全烧录系统镜像的终极指南 【免费下载链接】etcher Flash OS images to SD cards & USB drives, safely and easily. 项目地址: https://gitcode.com/GitHub_Trending/et/etcher 还在为烧录系统镜像到SD卡和U盘而烦恼吗&#x…...
Simulink全局变量实战:Data Store Memory模块的权衡与最佳实践
1. 为什么我们需要全局变量? 在Simulink建模过程中,我们经常会遇到需要在多个模块间共享数据的情况。想象一下你在设计一个汽车控制系统,油门踏板模块需要将踩踏深度传递给发动机控制模块,同时仪表盘模块也需要这个数据来显示当前…...
深入解析Neurosim芯片架构设计(二):从Tile到PE的层次化实现
1. Neurosim芯片的层次化架构全景 第一次看到Neurosim芯片的架构图时,那种感觉就像初次拆解俄罗斯套娃——从最外层的Chip Level开始,逐层打开Tile、PE、Sub-array这些精妙的层级结构。这种层次化设计可不是为了好看,而是实实在在解决了神经网…...
智慧停车系统无人值守停车、充电系统(含小程序源码、后端源码、岗亭端源码)
内容目录一、详细介绍二、效果展示1.部分代码2.效果图展示一、详细介绍 无人值守停车、充电系统(含小程序源码、后端源码、停车屏,岗亭源码) 智慧停车系统,智慧充电系统、主要实现车辆停车系统操作管理、车辆充电管理、车辆停车…...
Godot Open RPG高级技巧:5个提升游戏体验的实用方法
Godot Open RPG高级技巧:5个提升游戏体验的实用方法 【免费下载链接】godot-open-rpg Learn to create turn-based combat with this Open Source RPG demo ⚔ 项目地址: https://gitcode.com/gh_mirrors/go/godot-open-rpg Godot Open RPG是一款开源的回合制…...
