LeetCode 259. 较小的三数之和(固定一点,内层双指针)

文章目录

    • 1. 题目
    • 2. 解题

1. 题目

给定一个长度为 n 的整数数组和一个目标值 target,寻找能够使条件 nums[i] + nums[j] + nums[k] < target 成立的三元组 i, j, k 个数(0 <= i < j < k < n)。

示例:
输入: nums = [-2,0,1,3], target = 2
输出: 2 
解释: 因为一共有两个三元组满足累加和小于 2:[-2,0,1][-2,0,3]
进阶:是否能在 O(n2) 的时间复杂度内解决?

来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/3sum-smaller
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

类似题目:
LeetCode 15. 三数之和
LeetCode 16. 最接近的三数之和(固定左端+滑动窗口)

  • 排序后,固定左端点 i ,内层双指针(本题不需考虑重复)
    在这里插入图片描述
class Solution {
public:int threeSumSmaller(vector<int>& nums, int target) {sort(nums.begin(), nums.end());int i, j, k, n = nums.size(), count = 0, sum;for(int i = 0; i < n-2; ++i){j = i+1, k = n-1;while(j < k){sum = nums[i]+nums[j]+nums[k];if(sum < target)count += k-j, j++;else if(sum >= target)k--;}}return count;}
};

我的CSDN博客地址 https://michael.blog.csdn.net/

长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
Michael阿明

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

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

相关文章

linux虚拟中断virq,一种微内核操作系统的分区多核方法与流程

本发明涉及一种计算机领域&#xff0c;特别涉及一种微内核操作系统的分区多核方法。背景技术&#xff1a;在宏内核操作系统(如Linux&#xff0c;Windows)中,网络、文件系统、设备驱动等大量系统服务都在操作系统内核中&#xff0c;微内核操作系统与宏内核操作系统相反&#xff…

Android心得8--Internet

1.从Internet获取数据 利用HttpURLConnection对象,我们可以从网络中获取网页数据. URLurl new URL("http://www.sohu.com"); HttpURLConnectionconn (HttpURLConnection) url.openConnection(); conn.setConnectTimeout(5*1000);//设置连接超时 conn.setRequestMet…

LeetCode 487. 最大连续1的个数 II(滑动窗口)

文章目录1. 题目2. 解题1. 题目 给定一个二进制数组&#xff0c;你可以最多将 1 个 0 翻转为 1&#xff0c;找出其中最大连续 1 的个数。 示例 1&#xff1a; 输入&#xff1a;[1,0,1,1,0] 输出&#xff1a;4 解释&#xff1a;翻转第一个 0 可以得到最长的连续 1。当翻转以后…

SketchUp 7 linux,SketchUp各版本有哪些兼容性更改?

兼容性更改SketchUp 2018随着SketchUp 2018的发布&#xff0c;对OpenGL版本有了更高的要求&#xff0c;另外增加了模型显示效果。SketchUp 2017随着SketchUp 2017的发布&#xff0c;我们已经取消了对32位操作系统&#xff0c;OpenGL 2.0和模型的软件渲染(而不是硬件加速)的支持…

行向量,列向量,行主序矩阵,列主序矩阵

原理: PS: 很不喜欢OGL的列矩阵方式&#xff0c;不过本质上是一样的。 v2 v1 * ma * mb;        (dx) v2 mb(T) * ma(T) * v1     (ogl) 关于这个话题&#xff0c;网上有n多个版本&#xff0c;今天&#xff0c;我也来说说这个话题。&#xff08;一&#xff09;…

LeetCode 1429. 第一个唯一数字(map+queue)

文章目录1. 题目2. 解题1. 题目 给定一系列整数&#xff0c;插入一个队列中&#xff0c;找出队列中第一个唯一整数。 实现 FirstUnique 类&#xff1a; FirstUnique(int[] nums) 用数组里的数字初始化队列。int showFirstUnique() 返回队列中的 第一个唯一 整数的值。如果没…

msp430流水灯c语言程序,超详细msp430示例程序汇编.doc

超详细msp430示例程序汇编一、基础_实验【10个】1、入门试验&#xff1a;LED闪烁(1个)2、时钟实验&#xff1a;设置MCLK、ACLK、SMCLK(1个)3、低功耗实验&#xff1a;设置低功耗模式(1个)4、IO端口试验&#xff1a; IO端口寄存器设置(1个)5、定时器&#xff1a;看门狗定时器、T…

LeetCode 1244. 力扣排行榜(map+multiset)

文章目录1. 题目2. 解题1. 题目 新一轮的「力扣杯」编程大赛即将启动&#xff0c;为了动态显示参赛者的得分数据&#xff0c;需要设计一个排行榜 Leaderboard。 请你帮忙来设计这个 Leaderboard 类&#xff0c;使得它有如下 3 个函数&#xff1a; addScore(playerId, score)…

c语言实现ftp网络应用程序,使用C语言socket实现windows pc与ftp服务器通信---socket实现ftp客户端...

code// Client.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include #include #pragma comment(lib,"WS2_32.lib")using namespace std;#define PORT 21//FTP端口#define IP_ADDR "x.x.x.x"//主机地址int getPortNum(cha…

Readonly 与Const

Readonly 与Const readonly 关键字是可以在字段上使用的修饰符。当字段声明包括 readonly修饰符时&#xff0c;该声明引入的字段赋值只能作为声明的一部分出现&#xff0c;或者出现在同一类的构造函数中。 对于实例字段&#xff0c;在包含字段声明的类的实例构造函数中&#x…

LeetCode 562. 矩阵中最长的连续1线段(DP)

文章目录1. 题目2. 解题1. 题目 给定一个01矩阵 M&#xff0c;找到矩阵中最长的连续1线段。 这条线段可以是水平的、垂直的、对角线的或者反对角线的。 示例: 输入: [[0,1,1,0],[0,1,1,0],[0,0,0,1]] 输出: 3 提示: 给定矩阵中的元素数量不会超过 10,000。来源&#xff1a;力…

生活中c语言排序案例,C语言之数字排序-基于冒泡排序法的一些案例(对未知数量的数字进行排序)...

C语言之数字排序在学习C语言的时候遇到了几个比较基础的排序问题&#xff0c;又结合了之前的处理方法。觉得在这个需要再系统地进行复习一下。当我们在初学C语言的时候&#xff0c;我们都会结合三个数字的排序来理解计算机处理问题的方式&#xff1a;计算机不会像人一样直观地去…

疑问集锦

1.怎样动态的配置程序中的数据库连接参数&#xff0c;已达到系统的打包后的可安装性&#xff1f; 2.Form的数量会不会影响程序的大小&#xff1f; 3.怎样给程序瘦身&#xff0c;以提高程序的效率&#xff1f; 4.怎样在没有安装独立数据库的机器中运行有数据库文件的软件呢&…

LeetCode 1151. 最少交换次数来组合所有的 1(滑动窗口)

文章目录1. 题目2. 解题1. 题目 给出一个二进制数组 data&#xff0c;你需要通过交换位置&#xff0c;将数组中 任何位置 上的 1 组合到一起&#xff0c;并返回所有可能中所需 最少的交换次数。 示例 1&#xff1a; 输入&#xff1a;[1,0,1,0,1] 输出&#xff1a;1 解释&#…

android闹钟测试工具,android开发:AlarmManager闹钟管理器的实例

1、AlarmManager&#xff0c;顾名思义&#xff0c;就是“提醒”&#xff0c;是Android中常用的一种系统级别的提示服务&#xff0c;在特定的时刻为我们广播一个指定的PendingIntent。通俗点&#xff0c;就是设置一个时间&#xff0c;在指定的时间里&#xff0c;Alarm会帮我们执…

discuz程序的阅读(1)

今天开始阅读discuz2.5的源码&#xff0c;这是发现的一些收获&#xff0c;记录一下。有兴趣的同学可以去试试 CREATE TABLE pre_forum_post ( pid int(10) unsigned NOT NULL COMMENT 帖子id, fid mediumint(8) unsigned NOT NULL default 0 COMMENT 论坛id, tid mediumint(8) …

LeetCode 742. 二叉树最近的叶节点(建立父节点信息+BFS)

文章目录1. 题目2. 解题1. 题目 给定一个 每个结点的值互不相同 的二叉树&#xff0c;和一个目标值 k&#xff0c;找出树中与目标值 k 最近的叶结点。 这里&#xff0c;与叶结点 最近 表示在二叉树中到达该叶节点需要行进的边数与到达其它叶结点相比最少。 而且&#xff0c;当…

SharePoint 大局观(4)——从开发人员角度

内容摘要 SharePoint是微软提供的一个企业级别的协作平台&#xff0c;目前最新的版本是2010&#xff0c;它的功能相当多&#xff0c;而且也相当灵活。为了帮助大家更好地&#xff0c;从相对较高的层面了解SharePoint 2010的体系结构&#xff0c;我这里分七讲来分别介绍。 本节讲…

LeetCode 490. 迷宫(BFS/DFS)

文章目录1. 题目2. 解题2.1 BFS2.2 DFS1. 题目 由空地和墙组成的迷宫中有一个球。 球可以向上下左右四个方向滚动&#xff0c;但在遇到墙壁前不会停止滚动。 当球停下时&#xff0c;可以选择下一个方向。 给定球的起始位置&#xff0c;目的地和迷宫&#xff0c;判断球能否在目…

android studio moudel,Android Studio 添加其他目录下的module

Android Studio 添加其他目录下的moduleadmin • 2020 年 11 月 07 日[title]需要操作的原因[/title]在我们写程序的时候&#xff0c;经常会因为重复性的代码而耽误工夫&#xff0c;所以会编写一些常用的工具类和模块进行调用。在网上搜索到的都是同一个工程下如何配置模块&…