当前位置: 首页 > news >正文

Leetcode 167. 两数之和 II - 输入有序数组

给你一个下标从 1 开始的整数数组 numbers ,该数组已按 非递减顺序排列 ,请你从数组中找出满足相加之和等于目标数 target 的两个数。如果设这两个数分别是 numbers[index1] 和 numbers[index2] ,则 1 <= index1 < index2 <= numbers.length 。

以长度为 2 的整数数组 [index1, index2] 的形式返回这两个整数的下标 index1 和 index2。

你可以假设每个输入 只对应唯一的答案 ,而且你 不可以 重复使用相同的元素。

你所设计的解决方案必须只使用常量级的额外空间。

示例 1:

输入:numbers = [2,7,11,15], target = 9
输出:[1,2]
解释:2 与 7 之和等于目标数 9 。因此 index1 = 1, index2 = 2 。返回 [1, 2] 。
示例 2:

输入:numbers = [2,3,4], target = 6
输出:[1,3]
解释:2 与 4 之和等于目标数 6 。因此 index1 = 1, index2 = 3 。返回 [1, 3] 。
示例 3:

输入:numbers = [-1,0], target = -1
输出:[1,2]
解释:-1 与 0 之和等于目标数 -1 。因此 index1 = 1, index2 = 2 。返回 [1, 2] 。

提示:

2 <= numbers.length <= 3 * 104
-1000 <= numbers[i] <= 1000
numbers 按 非递减顺序 排列
-1000 <= target <= 1000
仅存在一个有效答案

class Solution {
public:vector<int> twoSum(vector<int>& numbers, int target) {unordered_map<int, int> heap;vector<int> res(2);for(int i = 0; i < numbers.size(); i ++ ) {int r = target - numbers[i];if(heap.count(r)) {res[0] = heap[r] + 1;res[1] = i + 1;return res;}heap[numbers[i]] = i;}return res;}
};
class Solution {
public:vector<int> twoSum(vector<int>& numbers, int target) {unordered_map<int, int> heap;for(int i = 0; i < numbers.size(); i ++ ) {int r = target - numbers[i];if(heap.count(r)) {return {heap[r] + 1, i + 1};}heap[numbers[i]] = i;}return {};}
};
class Solution {
public:vector<int> twoSum(vector<int>& numbers, int target) {for(int i = 0, j = numbers.size() - 1; i < j; i ++) {while(numbers[i] + numbers[j] > target) j --;if(numbers[i] + numbers[j] == target)return {i + 1, j + 1};}return {};}
};
class Solution {
public:vector<int> twoSum(const vector<int>& numbers, int target) {int i = 0;int j = numbers.size() - 1;while (i < j) {int sum = numbers[i] + numbers[j];if (sum == target)return {i + 1, j + 1};else if (sum > target)j--;elsei++;}return {};}
};

相关文章:

Leetcode 167. 两数之和 II - 输入有序数组

给你一个下标从 1 开始的整数数组 numbers &#xff0c;该数组已按 非递减顺序排列 &#xff0c;请你从数组中找出满足相加之和等于目标数 target 的两个数。如果设这两个数分别是 numbers[index1] 和 numbers[index2] &#xff0c;则 1 < index1 < index2 < numbers.…...

Java实体类之间的转换

一.为什么要转换实体类 通常在后端开发中经常不直接返回实体Entity类&#xff0c;经过处理转换返回前端&#xff0c;前端提交过来的对象也需要经过转换Entity实体才做存储。 二.怎么转换 使用的BeanUtils.copyProperties方法虽然可以实现转换&#xff0c;但是比较粗暴&#…...

ESCTF-Web赛题WP

0x01-初次见面-怦然心动:your name? 随便输入一个字 根据提示可以看到 我们需要看源代码 直接 搜索 secret 关键字或者 ESCTF flag ESCTF{K1t0_iS_S0_HAPPy} 0x02-小k的请求 更安全的传参 post 参数为ESCTF 值为 love 自己的ip 同时还有个要求 是需要从度娘转过来 https://www…...

某物登录表单加密

之前分析过某物h5的以及小程序的搜索接口,就是一个aes,秘钥不固定,表单里把秘钥以及密文一起发过去,服务器解密后再把数据加密返回,客户端解密展示到页面上. 这期是关于app的登录,密码登录 声明 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;…...

2024java面试题

题目&#xff1a;反转一个单链表描述&#xff1a;给定一个单链表的头节点&#xff0c;将其反转&#xff0c;返回反转后的链表的头节点。 题目&#xff1a;合并两个有序链表描述&#xff1a;给定两个有序链表的头节点&#xff0c;将它们合并成一个有序链表&#xff0c;返回合并…...

FebHost:什么是哈萨克斯坦.KZ域名?

哈萨克斯坦&#xff0c;作为中亚地区重要的一员,其国家域名”.kz”正成为这个独立国家在网络世界中的代表。作为一个经济快速发展的国家,哈萨克斯坦的互联网基础设施和网络应用也在蓬勃发展。而.kz域名正是哈萨克斯坦网络身份的重要体现。 作为注册和管理.kz域名的主要机构,哈…...

python(一)网络爬取

在爬取网页信息时&#xff0c;需要注意网页爬虫规范文件robots.txt eg:csdn的爬虫规范文件 csdn.net/robots.txt User-agent: 下面的Disallow规则适用于所有爬虫&#xff08;即所有用户代理&#xff09;。星号*是一个通配符&#xff0c;表示“所有”。 Disallow&…...

港大新工作 HiGPT:一个模型,任意关系类型 !

论文标题&#xff1a; HiGPT: Heterogeneous Graph Language Model 论文链接&#xff1a; https://arxiv.org/abs/2402.16024 代码链接&#xff1a; https://github.com/HKUDS/HiGPT 项目网站&#xff1a; https://higpt-hku.github.io/ 1. 导读 异质图在各种领域&#xf…...

Git版本管理使用手册 - 5 - Git的.ignore文件语法

Git的.ignore文件 1.使用 .ignore文件可以忽略指定文件的版本控制。 2.语法&#xff1a; (1)#开头表示注释 (2)&#xff01;开头表示不忽略匹配文件 (3)* 表示除/外&#xff0c;任何字符串 (4)&#xff1f;表示除/外&#xff0c;任何一个字符 (5)/ 如果模式的结尾有分割符/&am…...

使用Spring Cloud Gateway构建API网关,实现路由、过滤、流量控制等功能。

使用Spring Cloud Gateway构建API网关&#xff0c;实现路由、过滤、流量控制等功能。 使用Spring Cloud Gateway可以轻松地构建API网关&#xff0c;实现路由、过滤、流量控制等功能。下面是一个简单的示例&#xff0c;演示如何在Spring Boot应用程序中集成Spring Cloud Gatewa…...

Matlab|电动汽车充放电V2G模型

目录 1 主要内容 1.1 模型背景 1.2 目标函数 1.3 约束条件 2 部分代码 3 效果图 4 下载链接 1 主要内容 本程序主要建立电动汽车充放电V2G模型&#xff0c;采用粒子群算法&#xff0c;在保证电动汽车用户出行需求的前提下&#xff0c;为了使工作区域电动汽车尽可能多的消…...

<QT基础(4)>QLabel使用笔记

Label 前面的文章里面把QLabel批量引入ScrollArea作为预览窗口&#xff0c;这篇把图像填充到QLable的PixelMap展示指定图像。 参数设置 设置QLabel的大小格式 QWidget* widget new QWidget; widget->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); widget->…...

2016年认证杯SPSSPRO杯数学建模C题(第二阶段)如何有效的抑制校园霸凌事件的发生全过程文档及程序

2016年认证杯SPSSPRO杯数学建模 C题 如何有效的抑制校园霸凌事件的发生 原题再现&#xff1a; 近年来&#xff0c;我国发生的多起校园霸凌事件在媒体的报道下引发了许多国人的关注。霸凌事件对学生身体和精神上的影响是极为严重而长远的&#xff0c;因此对于这些情况我们应该…...

前端理论总结(css3)——css优化的方法

1&#xff1a;首推的是合并css文件&#xff0c;如果页面加载10个css文件&#xff0c;每个文件1k&#xff0c;那么也要比只加载一个100k的css文件慢 2&#xff1a;减少css嵌套&#xff0c;最好不要套三层以上 3&#xff1a;不要在ID选择器前面进行嵌套&#xff0c;ID本来就是唯一…...

项目立项管理

目录 1.概述 2.项目建议与立项申请 3.项目可行性研究 3.1.内容 3.2.初步可行性研究 3.3.详细可行性研究 4.项目评估与决策 5.总结 1.概述 本文的目录结构参考了《信息系统项目管理师教程&#xff08;第四版&#xff09;》。 项目立项管理是一项全面评估准备投资工程的多…...

QT的学习

代码练习 完成一个使用qss的登陆窗口界面。 使用手动连接&#xff0c;将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中&#xff0c;在自定义的槽函数中调用关闭函数 将登录按钮使用qt5版本的连接到自定义的槽函数中&#xff0c;在槽函数中判断ui界面上输入的账号是否…...

redis在docker安装并启动流程

1、启动server docker run -d -p 6379:6379 --name redis01 redis:7.2.4以上命令&#xff0c;每次启动新的Redis容器&#xff0c;数据会丢失。 我们需要挂载数据文件&#xff0c;在宿主机上面&#xff0c;这样就可以持久化数据. 2、挂载数据文件&#xff08;可根据需求选择…...

Spring高频面试题

&#xff08;一些来源于GitCode AI&#xff09; 什么是Spring框架&#xff1f; Spring是一个开源的Java平台&#xff0c;它简化了企业级应用的开发。它提供了IOC&#xff08;Inversion of Control&#xff09;/DI&#xff08;Dependency Injection&#xff09;容器&#xff0c;…...

Qt篇——Qt无法翻译tr()里面的字符串

最近遇到使用Qt语言家翻译功能时&#xff0c;ui界面中的中文都能够翻译成英文&#xff0c;但是tr("测试")这种动态设置给控件的中文&#xff0c;无法翻译&#xff08;lang_English.ts文件中的翻译已经正确添加了tr()字符串的翻译&#xff09;。 上网搜了很多资料&am…...

农村分散式生活污水分质处理及循环利用技术指南

标准已完成意见征集&#xff1a; 本文件给出了农村分散式生活污水分质处理及循环利用的总则、污水收集、污水分质处理、资源化利用、利用模式、运维管理等的指导。 本文件适用于农村分散式生活污水分质处理及循环利用的设施新建、扩建和改建工程的设计、施工与运维。 注:本文件…...

如何用LDBlockShow高效绘制连锁不平衡热图:从入门到精通的完整指南

如何用LDBlockShow高效绘制连锁不平衡热图&#xff1a;从入门到精通的完整指南 【免费下载链接】LDBlockShow LDBlockShow: a fast and convenient tool for visualizing linkage disequilibrium and haplotype blocks based on VCF files 项目地址: https://gitcode.com/gh_…...

【2024最新版】ElevenLabs有声书生产流水线:1个API Key+3个Python脚本+2个FFmpeg指令=日更10小时高质量音频

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;ElevenLabs有声书生产流水线全景概览 ElevenLabs 的有声书生产流水线是一套融合文本预处理、语音合成、音频后处理与元数据封装的端到端自动化系统&#xff0c;专为高质量、多语种、情感一致的有声内容…...

深入解析ISO/IEC 14443-4:非接触通信的“对话规则”与实战应用

1. 非接触通信的"对话规则"从何而来&#xff1f; 想象一下你第一次和外国朋友交流的场景&#xff1a;双方需要确认彼此能说哪种语言、用多大的声音说话、每次说完话要等多久再回应——这就是ISO/IEC 14443-4协议在非接触通信中扮演的角色。作为近场通信&#xff08;N…...

技术深度解析:5大核心要点掌握Sunshine开源游戏串流服务器实战部署

技术深度解析&#xff1a;5大核心要点掌握Sunshine开源游戏串流服务器实战部署 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine Sunshine是一款功能强大的自托管开源游戏串流服务器…...

杰理之RX 端 长按软关机后无法唤醒【篇】

问题描述&#xff1a;RX端长按进入软关机后&#xff0c;无法唤醒问题&#xff0c;...

从遥感图像到文字识别:手把手教你用旋转目标检测搞定那些‘歪着’的目标

旋转目标检测实战&#xff1a;从遥感图像到倾斜文本的高效解决方案 在计算机视觉领域&#xff0c;目标检测技术已经取得了长足进步&#xff0c;但传统水平边界框检测方法在面对旋转目标时往往表现不佳。无论是遥感图像中的飞机、船舶&#xff0c;还是自然场景中倾斜的文本&…...

【Gemini JavaScript开发支持终极指南】:20年谷歌AI工程师亲授7大避坑法则与实时调试秘技

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Gemini JavaScript开发支持概览 Gemini API 的 JavaScript 集成能力 Google Gemini 提供了官方 Node.js SDK&#xff08; google/generative-ai&#xff09;&#xff0c;支持在服务端与浏览器环境中调…...

面试官最爱问的FPGA亚稳态问题,我用这3个真实波形图给你讲透

FPGA亚稳态问题深度解析&#xff1a;从波形图到面试实战 在数字电路设计中&#xff0c;亚稳态&#xff08;Metastability&#xff09;是一个无法回避的核心问题。对于准备FPGA相关岗位面试的工程师来说&#xff0c;能否清晰解释亚稳态现象、分析其成因并提出解决方案&#xff0…...

LeagueAkari游戏数据分析工具:从新手到高手的完整进阶攻略

LeagueAkari游戏数据分析工具&#xff1a;从新手到高手的完整进阶攻略 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power &#x1f680;. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit 你是否曾在英雄联盟游戏…...

【GD32】从零构建GD32开发环境(Keil 5)—— 固件库配置与工程创建实战

1. 为什么需要配置固件库&#xff1f; 刚接触GD32单片机的朋友可能会有疑问&#xff1a;为什么不能直接在Keil里写代码&#xff1f;这就好比装修房子&#xff0c;固件库就像是提前准备好的建材包&#xff0c;里面已经包含了墙面涂料、地板材料、门窗框架等标准件。如果每次开发…...